Cloud Computing Architectures: A Retrospective Study Ramakalavathi Marapareddy *, Ajay Bandi, and Satya Savithri Tirumala * Dept. of Electrical and Computer Engineering, Mississippi State University, USA Dept. of Computer Science and Engineering, Mississippi State University, USA * Dept. of Electronics and Communication Engineering, JNTUH, India rm1166@msstate.edu, ab1370@msstate.edu, tirumalasatya@gmail.com Abstract Now-a-days cloud computing is popular and several information technology corporate companies have started using their cloud computing architectures. Cloud computing plays a key role for distribution of resources such as storage devices and software. Cloud computing reduce the management difficulties and improves the efficiency of services. Generally cloud computing architectures are broadly separated into cloud platform architecture and cloud application architecture. This paper describes a review of different categories of cloud computing architectures such as cloud computing architectures such as service-oriented cloud computing architecture, Microsoft cloud computing architecture, Abicloud cloud computing architecture, Eucalyptus cloud architecture, Nimbus cloud computing architecture, OpenNebula cloud computing architecture, cloud computing open architecture, and an intelligent and energy efficient computing architecture. The work presented identifies different research areas includes wireless communication in cloud computing and security in cloud computing architectures. Keywords- cloud; cloud computing; cloud computing architecture; service-oriented architecture; virtualization I. INTRODUCTION Cloud computing means pooling together large amounts of physically distributed computing resources, like processors, memory, network bandwidth and storage, that can be well thought-out on demand into services in real-time [1]. Cloud computing is the unification of quite a lot of concepts from resource pooling, virtualization, dynamic provisioning, utility computing, on-demand consumption, and internet delivery of services [1]. This paper describes the basic architectures for cloud computing. The reparation of cloud computing over conventional computing includes: agility, lower entry cost, device independency, location independency, and scalability [2]. This optimized computing architecture is provided through a technology infrastructure often virtualized and that lets applications, data storage, processing power, and network resources are easily provisioned, managed, and secured remotely over public or private networks [3]. The cloud computing model comprise five indispensable characteristics such as on-demand self-service, broad network access, resource pooling, rapid elasticity, and measured services [3]. This also offers three service models such as Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS) [3]. There are four deployment models in the cloud computing such as public, private, communities, or hybrid. The cloud architecture demonstrates the platform and software components, middleware, cloud resources and services, and communication protocols [3]. As summarized in [7], characteristically there are four types of resources that can be provisioned and consumed over the Internet. They can be shared among users by leveraging economy of scale. The way of sharing resources with requesters over the network is provisioning (preparing and allowing the network to provide). The major objectives of cloud computing are to influence Internet to provision resources to users. The first type of resource is infrastructure resources, the second type of resource is software resources, the third type of resource is application resources, and the fourth type of resource is business processes. In summary [8], the parallel machines were very costly and a major computational change was observed as divergence in resources which categorized as distributed computing such as Network of Workstations, Cluster computing, Grid Computing etc. In the current scenario, cloud computing uses central resources in the form of data-centers. This paper presents a review about the architectures of the cloud computing systems. The remaining sections are organized as follows: Section II describes cloud computing architectures in general; section III presents the different categories of cloud computing architectures that includes service-oriented cloud computing architecture, Microsoft cloud computing platform, Abicloud cloud computing platform, Eucalyptus cloud platform, Nimbus Cloud Computing Platform, OpenNebula cloud computing platform, cloud computing Open architecture, and, intelligent and energy efficient cloud computing architecture that supports e- governance. Section IV discusses the conclusions and future work. A cloud is an Internet-Centric information technology capability. Cloud computing operates on the resources which are made available via cloud services. Thus, Vol. 2(1), July-December 2012 @ ISSN 2278-0947 1
cloud computing architectures should basically entail cloud platform architecture and cloud application architecture [1]. Figure 1 shows the nomenclature of cloud computing architectures. There is a lucid separation between the functional roles of service providers and infrastructure providers. Service providers are the entities that recognize the needs of a particular business and present service applications. Infrastructure providers operate host sites that own and manage the physical infrastructure on which service applications accomplish the goals of the consumer. To optimize resource use, the computational resources within a site are partitioned by a virtualization layer into virtual execution environments. The virtualized computational resources, along with the virtualization layer and all the management enabled components, are referred to as the service provider [1]. II. CLOUD COMPUTING ARCHITECTURES B. Cloud Application Architecture (CAA) Cloud computing takes advanced concepts such as utility computing and virtualization by allowing self-service, and workload management. CAA is basically comprised of three layers, namely, the virtual appliances which run with the APIs of different CSPs/platforms, the cloud brokers which work with the linked cloud ontology s, and the Business Service and Process (BSP) layer which perform Business Service Management (BSM), Service Level Agreement (SLA), service orchestrations and process management. BSP and cloud broker layer jointly implement service-oriented processes, including cloud service discovery, matching, dynamic SLA negotiation on-demand provision, etc. The execution of the service applications is monitored and the capacity is constantly adjusted to meet the requirements and SLA specified in the service manifest [1]. Figure 3 shows cloud application architecture. Figure 2.. Cloud platform architecture Figure 1. Nomenclature of cloud computing architectures. A. Cloud Platform Architecture (CPA) In a cloud architecture, which can put forward IaaS, PaaS, SaaS, etc., large resource pools based on virtualized infrastructure provide greater flexibility and efficiency. Resources of each physical host are virtualized and presented as multiple Virtual Machines (VMs) to run multiple operating systems and application instances. Cloud architecture provides pools of virtualized resources (compute, memory, storage, and bandwidth) across multiple hosts and storage frames [1]. Compute clouds are usually complemented by storage clouds that supply virtualized storage through APIs that assist storing VM images, source files for components such as Web servers, application state data, and general business data [1]. Figure 2 cloud platform architecture. Figure 3. Cloud application architecture. Vol. 2(1), July-December 2012 @ ISSN 2278-0947 2
III. CATEGORIES OF CLOUD COMPUTING ARCHITECTURES A. Service Oriented Cloud Computing Architecture (SOCCA) The Service Oriented Cloud Computing Architecture is a layered architecture. The major layers in this architecture are Individual Cloud Provider Layer, Cloud Ontology Mapping Layer, Cloud Broker Layer, and SOA Layer. Individual Cloud Provider Layer: Each cloud provider builds its own data centers that power the cloud services it provides. Each cloud may have its own proprietary virtualization technology or utilize open source virtualization technology. The distinction from current cloud implementations is that the cloud computing resources in SOCCA are componentized into independent services such as Storage Service, Computing Service and Communication Service, with open-standardized interfaces, so they can be combined with services from other cloud providers to build a cross-platform virtual computer on the clouds [2]. Cloud Ontology Mapping Layer: Cloud Ontology Mapping Layer exists to mask the differences among the different individual cloud providers and it can help the migration of cloud application from one cloud to another. Several important ontology systems are Storage Ontology, Computing Ontology, and Communication Ontology [2]. Cloud Broker Layer: Cloud brokers serve as the agents between individual cloud providers and SOA layer. Each major cloud service has an associated service broker type. Generally, cloud brokers need to fulfill the following tasks: Cloud Provider Information Publishing, Ranking, Dynamic SLA Negotiation, and On-Demand Provision Model [2]. SOA Layer: This layer fully takes the advantages of the existing research and infrastructure from traditional SOA. Figure 6 shows a possible SOA layer for SOCCA. Not only services but also many other artifacts can be published and shared, such as workflow templates, collaboration templates and test cases. Another major improvement is multi-tenancy support that allows more flexibility. SOA layer of SOCCA allows more flexibility than traditional SOA; it further separates the roles of service providers and cloud providers, and the service logics and its running environments [2]. B. Microsoft Cloud Computing Architecture Windows Azure is a new-fangled cloud computing services architecture from Microsoft designed to host web services and applications in Microsoft-owned, Internetaccessible data centers. It is a supple and interoperable platform used to build new applications to run from the cloud or progress existing applications with cloud-based capabilities. Elements of Windows Azure architecture are showed in Figure 4 Microsoft cloud computing architecture is based on new trends in Data center design, which can be generalized in three pillars: Configuration, Construction, and Sustainability [5]. C. Abicloud Cloud Computing Architecture Abicloud is a cloud computing platform developed by Abiquo, which is largely focused on the enlargement of cloud architecture. It can be used to build, integrate and manage public as well as private cloud in the harmonized environments. Using Abicloud, user can easily and automatically organize and manage the server, storage system, network, virtual devices and applications. The most important difference between Abicloud and other cloud computing architectures is its prevailing web-based management function and its core encapsulation manner. The best way to meet the requirement of users is to build public or private clouds with harmonized cloud computing cores and extensible infrastructures [6]. Figure 4. Microsoft Azure cloud computing architecture D. Eucalyptus Cloud Architecture Eucalyptus (Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems) project began from California University, Santa Barbara, and mainly was used to build open-source private cloud platforms. Now it is run by Eucalyptus System Company. Eucalyptus is an expandable computing structure that can be used to attach the users' programs to the useful systems, it is an open-source infrastructure by means of clusters or workstations implementation of elastic, utility, cloud computing and a popular computing standard [6]. Node controller is a module running on the physical resources, on which all kinds of entities of virtual machine can run. Virtual cluster controller runs on the head node otherwise server of the virtual cluster, it is used to access private or public networks. Cloud controller is the core manager of the clouds architecture, an element answering for global decision-making which is relocated to users [6]. Vol. 2(1), July-December 2012 @ ISSN 2278-0947 3
E. Nimbus Cloud Computing Architecture Nimbus is an open tool set, and also a cloud computing solution providing IaaS. Nimbus has supported many nonscientific research neighborhood applications. It permits users to lease remote resources and build the required computing environment bringing into play virtual machines [6]. Nimbus cloud computing architecture includes many different components, such as client, agent, resource manager, and so on. In general, all these functional components can be classified as three types. The first type is client-supported modules which are used to support all kinds of cloud clients. The second type of component is mainly service-supported modules of cloud platform, providing all kinds of cloud services. The third type of component is the background resource management modules which are mainly used to manage all kinds of physical resources on the cloud computing architecture [6]. F. OpenNebula Cloud Computing Architecture OpenNebula is one of the key technologies of reservoir plan and the flagship research project in virtualization infrastructure and cloud computing of the European Union. OpenNebula is also an open source cloud service framework. It allows user organize and manage virtual machines on physical resources and it can set user s data centers or clusters to flexible virtual infrastructure that can automatically adjust to the change of the service load [6]. OpenNebula is also an open and flexible virtual infrastructure management tool, which can be used to harmonize the storage, network and virtual techniques, and let users dynamically organize services on the distributed infrastructure according to the allocation strategy at data center and remote cloud resources. This is very functional to build high scalable cloud computing environment [6]. Based on the practices in the areas of service provisioning and solution design, the following two key enabling technologies could play very important roles: virtualization technology and Service-Oriented Architecture (SOA) [7]. Figure 5 shows the cloud computing open architecture overview diagram. The virtualization technology handles how images of the operating systems, middleware, and applications are pro-created and allocated to the right physical machines or a slice of a server stack [7]. The SOA is the development of a system or software architecture for addressing componentization, reusability extensibility, and flexibility. In order to put up scalable cloud computing architectures, there is a need to leverage SOA to build reusable components, standard-based interfaces, and extensible solution architectures. Creating a self-styled cloud computing architecture is easy as long as it can facilitate sharing of at least one of the resources. [7]. An intelligent and energy efficient cloud computing architecture is based on distributed data-centers which form a client s instance in the nearest neighborhood and fulfill client s request in optimized latency. A cloud computing architecture data-center works in master-slave form. Adjacent data-centers form a computing zone and users may choose creating their instances in multiple zones [8]. The major entities involved in the architecture are: master/slave datacenter, users/brokers, and Service Level Agreements (SLAs). Figure 6 shows intelligent and energy efficient cloud computing architecture. H. Intelligent & Energy Efficient Cloud Computing Architecture G. Cloud Computing Open Architecture Figure 5. Cloud Computing Open Architecture Overview Cloud Computing involves a set of key technologies to address resource sharing based on business requirements. Figure 6. Intelligent & energy efficient cloud computing architecture Vol. 2(1), July-December 2012 @ ISSN 2278-0947 4
IV. CONCLUSIONS AND FUTURE WORK AUTHOR S BIOGRAPHY Cloud computing architectures are fundamentally subdivided into cloud platform architecture and cloud application architecture which are linked by the use of the cloud services available. This paper projected the review of cloud computing architectures such as service-oriented cloud computing architecture, Microsoft cloud computing architecture, Abicloud cloud computing architecture, Eucalyptus Cloud architecture, Nimbus cloud computing architecture, OpenNebula cloud computing architecture, cloud computing open architecture, and an energy efficient computing architecture. Cloud computing is a new technology extensively studied in modern years. This survey paper describes an effective Cloud computing architectures is based on distributed data-centers. Our study on these architectures shows a promising future for cloud computing yet there are many concerns such as security and communication between the components in the architecture. This study illustrates the potential of cloud computing in recent times. The work presented here leads to further analysis of cloud computing capabilities such as easy storage of data and wireless communication between the components. ACKNOWLEDGMENT We would like to thank Dr. Pan Li for his valuable suggestions to carry out this study and Mr. Samuel Camacaro for reviewing this paper. Ramakalavathi Marapareddy completed her Bachelor of Technology degree in Electronics and Communication Engineering (ECE) from Jawaharlal Nehru Technological University (JNTU), Anantapur in 2000. She also received a Master of Technology degree in ECE from JNTU, Hyderabad where she is working as an assistant professor since 2002. Currently she is a PhD student in Electrical and Computer Engineering Department at Mississippi State University under the guidance of Dr. Nick Younan. She is also a member of ISTE. Her research interests include image processing, wavelets and mobile computing. Ajay Bandi completed his Bachelor of Engineering degree in ECE from Adhiparasakthi Engineering College, Melmaruvathur, India in 2006. He also received two Master of Science degrees in Applied Computer Science and Computer Science from Northwest Missouri State University and Mississippi State University in 2009 and 2011 respectively. He is a PhD student in Computer Science and Eng at Mississippi State University under the supervision of Dr. Edward Allen. He is also a student member of Association for Computing Machinery (ACM), IEEE, and IEEE-Computer Society (IEEE-CS). His research interests include software engineering, autonomic computing and cloud computing. Dr.Satya Savithri Tirumala is an associate professor in the Electronics and Communication Engineering Department at JNTU, Hyderabad since 1999. She received a PhD in Electronics and Communication Engineering at JNTU Anantapur. Her PhD work concerns image processing. She is also a member of ISTE and IETE. Her research interests include image processing and VLSI. REFERENCES [1] H. Tianfield, "Cloud computing architectures," Proceedings of IEEE International Conference on Systems, Man, and Cybernetics (SMC), pp. 1394-1399, Oct. 2011. [2] W. Tsai, X. Sun, and J. Balasooriya, "Service-Oriented cloud computing architecture," in Seventh International Conference on Information Technology: New Generations (ITNG), pp.684-689, April 2010. [3] A. Samba, "Logical data models for cloud computing architectures," IT Professional, vol.14, no.1, pp.19-26, Jan.-Feb. 2012. [4] N. Botts, B. Thoms, A. Noamani, and T. A. Horan, "Cloud computing architectures for the underserved: public health cyberinfrastructures through a network of health ATMs," 43rd Hawaii International Conference on System Sciences (HICSS), 2010, pp. 1-10, 5-8 Jan. 2010. [5] R. Mutavdzic, "Cloud computing architectures for national, regional and local government," MIPRO, 2010 Proceedings of the 33rd International Convention, pp.1322-1327, 24-28 May 2010. [6] J. Peng, X. Zhang Z. Lei, B Zhang, W. Zhang, and Q. Li;, "Comparison of several cloud computing platforms," in Second International Symposium on Information Science and Engineering (ISISE), pp.23-27, Dec. 2009. [7] L. Zhang, and Q. Zhou, "CCOA: cloud computing open architecture, IEEE International Conference on Web Services, pp.607-616, 6-10 July 2009. [8] R. Sharma, and P. Kanungo "An intelligent cloud computing architecture supporting e-governance," 17th International Conference on Automation and Computing, pp.1-5, Sept. 2011. Vol. 2(1), July-December 2012 @ ISSN 2278-0947 5