Keywords

1 Introduction

Cloud computing concept is a novel internet-based technology used in delivering data, application, and storage infrastructures to users. This is a recent trend in IT that shifts computing from traditional client server network into data center structure [7]. Cloud computing deals with computation, data access, and storage services deliveries without user’s knowledge of physical location or system configuration of cloud data. Cloud computing term has attracted various connotations. In some instance, it refers to grid computing, meaning a method of acquiring more computing resources or specialized computing hardware resources. In most cases, it refers to software as a service where access to third party software or services that runs their applications are provided. To wider audience, it means a total computing infrastructure where users computing requirement are provided, managed, and monitored by cloud providers or third party [10]. Cloud computing is a representation of commoditized services similarly delivered like traditional utilities such as electricity, water, telephone, and gas. Users in such model only access services based on their need, regardless of how the services are delivered or where it is hosted [5].

Several computing paradigms such as cluster, grid, and presently cloud computing have promised to deliver the vision of utility computing. The contemporary model represents an infrastructure where users and enterprises are capable of accessing services such as applications, network, and storage via internet on demand from anywhere in the globe. Consequently, cloud computing innovation is rapidly transforming toward developing unlimited software for users or enterprises to utilize or access as a services exclusive of underlying hosting structure, instead of installing and running on their respective computers. Thus, cloud computing infrastructures are made up of large data centers maintained and monitored round the clock by cloud providers. Therefore, this has made cloud computing as conservatory of the paradigm where the potentials of enterprise application are uncovered as powerful services that can be accessed via the internet infrastructure. The cost associated with traditional provision of in-house network services by businesses has made adoption of cloud computing as an inevitable alternative to eliminating and where possible reducing overhead spending. There is need for users to demand service delivery guarantee to be enshrined in SLA with cloud providers since cloud application may be core or critical part of the enterprise business operation [5].

The most important objective of cloud computing is to properly utilize the distributed resources by combining it to achieve reasonable output and in essence be able to resolve a major computation issues. Understanding cloud computing clearly is a massive challenge. The existence of varying level of support with different level of services from different providers using the same term cloud to describe and market their product and services makes the public perception about cloud computing technology extremely cloudy [10]. Cloud computing in simplest term entails a modern and innovative process of offering variety of computing services, including application virtualization, presentation software virtualization, Server infrastructure virtualization, mobile application virtualization, desktop virtualization, user state virtualization, hardware, and total platforms or computing environment as depict in the cloud computing diagram Fig. 1.

Fig. 1
figure 1

Cloud computing

1.1 History

There are numbers of historical attributes to cloud computing. The underlying concept dates back to 1960 when John McCarthy who expressed an opinion that computation will in future be structured as public utility [16]. The cloud computing characteristic also was brought into wider domain in 1966 by Douglas Parkhill in his book “The challenge of the Computer” [7]. Retrospectively, the term cloud was ascribed to the world of Telecommunication, where Virtual Private Network services was started to be offered with comparable quality of service at reasonable cheaper rate. Recently, cloud implementation has attracted huge interest from large organizations. In 2006, Amazon launched amazon web service (AWS), IBM and Google commenced huge research project in cloud. Also the first open source cloud platform for private cloud deployment was Eucalyptus [7].

2 Cloud Computing Models and Services

Cloud computing deployment model and services can be categorized based on types of resource deployment process, architectural integration, and service delivery forms as shown in Table 1. The deployment models are Public cloud, Private cloud, Hybrid cloud, and Community cloud while cloud services include infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS).

Table 1 Cloud computing deployment model and services

2.1 Cloud Computing Model

Public cloud is a cloud infrastructure used to provide various types of cloud services to different categories of users via internet by third party providers. Users of public cloud services only pay by utilization basis popularly termed as pay-per-use on demand. The infrastructure provisioned can be simultaneously utilized by multiple users, managed, and operated by cloud service providers or third party. A good example of applications offering in public cloud include: web-based email (Gmail, etc.), social media (LinkedIn, Facebook, Twitter, etc.) and online multi-media hosting/storage such as Snapfish, YouTube, Flickr, and iTunes. [3, 14].

Private cloud is an infrastructure made exclusively to enterprise users or explicit customers and can be managed by organization themselves or third party cloud provider. This model is suitable for government department or SMEs with multiple business branches. Unlike public cloud, the mode of private cloud deployment is predominantly within organizational data center environment, giving enterprises advantages of full resource control and security [7].

Hybrid cloud is a cloud infrastructure comprising two or more deployment types that continues to maintain unique entities but are connected together via proprietary or standardized technology that enable application and data portability [16].

Community cloud is a cloud infrastructure used for shared infrastructure provisioning between organizations and can be managed by them or third party provider. The location of physical infrastructure of the cloud can be local or remote to the businesses it supports, and the infrastructure ownership can be one or more of the participating enterprises or third party. Community cloud represent a potential solution generally for entities that share common bonds i.e., different department within a large organization or government entities can use community cloud, irrespective of the fact, that task being performed by participating enterprises are complete independent of each other. Other community cloud instances are where parenting enterprise of subsidiaries share community cloud or partnership/strategic alliance between independent organizations share community cloud [3].

2.1.1 Cloud Computing Services

IaaS is used to provide users remote access to infrastructure resources provisioned in cloud such as storage, processing, and network. The client does not need to purchase required infrastructure but charged by pay-per-use, and the resources are scalable depending on customer demand. For example, Rack Space Cloud, Amazon EC2 and S3, Terremark Enterprise Cloud and Microsoft [14].

PaaS enables the cloud service offering of complete platform of computer, in addition to design, application hosting, and testing. Moreover, users can utilize the service platform to develop web application without requiring installing software or extra hardware in their local PC e.g., Facebook, Google AppEngine, and Microsoft [7].

SaaS is a method where entire application are hosted and offered via the internet on demand. Users of SaaS are not required to install or purchase application or software on their local system rather by pay-per-use or demand model via cloud provider. These modes of service eradicate issues of software licensing or maintenance to users. In addition, it enables rapid deployment of software, thereby reducing cost associated with software deployment and planning to enterprises or users e.g., Google Mail, SaleForce.com CRM, and Google Doc. [4].

3 Cloud Computing Characteristics

  1. (1)

    On demand self-service. The on demand self-services is a cloud computing feature that enable cloud users to instantaneously at any time initiate provision of the needed resources automatically without any necessity of physical, human communication with cloud service provider. Cloud resources in this category ranges from server, network, storage, software and platform for development, etc. [9, 13].

  2. (2)

    Resource pooling. The resources of cloud computing providers are pooled (combined together) purposely to serve multiple users simultaneously using multi-tenancy representation, consisting diverse virtual and physical resources assigned and reassigned dynamically based on user requirement. The motivational factor behind the concept of resource pooling computing paradigm is economics of scale and resource specialization. The model has resulted to anonymity of the physical computing resource, moreover, a wider view of location independence as cloud users have no knowledge, structure, and control over the location of resource provided or where their data or resources are stored in cloud i.e., network, memory, storage etc. [13].

  3. (3)

    Broad network access. The cloud computing resources are provided over the network and accessed via internet in a standard process that enable its use through heterogeneous thick and thin platforms clients such as workstations, PDA, Mobile Phones, laptops, and tablets. The cloud computing broad network access initiatives helps promote cloud utility resource, in addition widens scope of cloud benefits [9].

  4. (4)

    Metering or Measured service. Cloud computing has built-in service that automatically optimize and control cloud resources usage by utilizing metering system to bill customer based on services type such as network and storage. The usage of resources can be tracked, audited, monitored, reported, controlled, and providing high level of transparency to both users and service providers [9, 13].

  5. (5)

    Rapid elasticity. It is difficult to anticipate how cloud users may demand or require services. However, services should be designed to be provisioned elastically and released, in some instance be able to automatically scale rapidly in respect to user demand. The ability to scale services whenever additional user is added or when user requirement changes can only be achieved by providing elasticity in cloud [4, 9].

4 Enterprise Cloud Implementations

Presently, a lot of cloud computing providers have been implementing cloud computing successfully in commercial level and prominent among them include: Amazon, Google, IBM, and Microsoft, etc.

Amazons elastic compute cloud (EC2) offers ranges of services characterizing computing virtual environment. These enable use of web services interface by subscribers to launch instances of operating systems combination as well as user’s custom applications environments, in addition filling and managing user’s access permission to Networks. Amazon simple storage service (S3) offers a simple Web Service Interface utilized by users in storing and retrieving unlimited data, anywhere, anytime via internet. Moreover, it gives developers opportunity of access to reliable, fast, scalable low-cost infrastructure data storage, normally utilized in running global Network of Web Sites based on the descriptive of services by Amazon. Additionally, Amazon has other cloud-based services such as Amazon flexible payment service (FPS) and Amazon simple queue service (SQS). The Amazon SQS provides hosted queue environment designated for message storage as it transverse between computers. This is quite useful for developers as they make use of opportunity presented by the service in moving data between distributed components of their applications that execute various tasks, without the need for every component to be constantly available. Other Amazon platforms are perfectly integrated by the services of AWS and Amazon EC2. The Amazon FPS in the other hand is a piece of web services that enable company’s bill their users comparable to Checkout or PayPal. It also offer send and receive of fund as well as capability for deciding how payment instruction can be structured, plus standing order that can remain in place for several transaction. The main purpose of FPS is to create an efficient micropayment and economically cost-efficient process, helping organization charge lower interest by combining together entire purchase for cheaper transaction cost [16, 17].

Google offers a number of cloud services for various requirements. Prominent among them is Google App, a group of Web-based application and file storage that can be run on a web browser. Applications in these categories include: Google talk, Gmail, Google Calendar, productive tools such as text files, Google Docs, presentations, and spreadsheets. This applications help enable content sharing at the same time promotes collaboration.

IBM offers cloud products under its smart Business collection such as Smart cube, Smart Market, and Smart Desk. IBM Smart cube is a combination of appliance of office software built-in and networking storage. Smart Market is a portal services used for managing and comparing of various business applications specifically run in IBM cloud computing environment. Smart Desk is a software dashboard package specifically developed to facilitate management of services and applications by users from the market and cube clouds. One of the fundamental issues to organizational IT staff is having enough resource environments to perform test on new application before deployment to production. This issue was successfully addressed by IBM through the introduction of Smart Business Test Cloud. The product is intended to reduce cost associated with application testing by organization prior to production deployment [16, 17].

Microsoft has invested much in computing services delivery model by introducing Azure as main offering for cloud platform. The Azure platform has three components such as Windows Azure, SQL Azure, and Azure AppFabric known formally as Net Services. Windows Azure is distinctively designed to enable on demand compute and storage services for developers to host, scale as well as manage cloud application including internet. SQL Azure is developed for the extension of potentials associated with the SQL Server and Microsoft database management system (DBMS) as a web-based distributed relational database into cloud. The AppFabric component is a collection of integrated technologies design to enable developer’s link applications and services with Windows Azure and on-premises deployment [16, 17].

5 Cloud Utility Classes

A model of computation is highly required by any application as communication and storage model. The necessary statistical multiplexing critical to accomplishing elasticity and the facade of unlimited capacity accessible on demand needs automatic managements and allocation, which in practical sense, the key operational element is virtualization. Several clouds computing utility offering can be distinguished based on abstraction level of cloud software and resource management level. Some typical examples in respect to cloud utility classes are Amazon EC2, Google AppEngine, and Microsoft Azure [1].

Amazon EC2 is a critical example in this category. The instance of Amazon EC2 appears exactly like the physical hardware, meaning users have the ability to control the complete stack of the hardware right from the kernel. Apparently, the low level makes it naturally difficult for automatic failover and scalability to be offered by Amazon due to semantics associated with replication including other management issues that are greatly application independent [1].

Google AppEngine is another vital instance, which is an application specific domain platform, solely targeted at conventional web application, enforcing an application composition of clean separation between stateful tier and stateless computation tier. The AppEngines high availability mechanism and sound automatic scaling, including Google proprietary data storage megastore available to AppEngine applications, completely relied on these constraints [1].

Further example is Microsoft Azure application developed using .NET libraries, compilation still based on common Runtime, a management environment language-independent. Comparatively, the framework is quite flexible than AppEngines although storage model and application structure user choices are constrained. Consequently, Microsoft Azure can be classified as an intermediate between hardware virtual machine such as EC2 and application framework like AppEngine [1].

6 Advantages of Cloud Computing

Reduction of Cost: Cloud computing service delivery process, simplification and economics convenience contributes to major drives to cloud computing demands. Recent anticipation of many organizations in considering cloud technology services as a potential for massive reduction in IT cost is gathering strength. Moreover, this will help eliminate much expense and problems associated with installing and maintaining application locally, thereby maximize SMEs financial investment capacity [15, 17].

Create Opportunity to SMEs: Presently, cloud computing has considerably reduced the cost of entry for SMEs trying to profit from compute exhaustive business analytics, usually accessible only by larger enterprises. Such computational requirements involve high-computational power for comparatively short time; however, cloud computing facilitates opportunity for dynamic provision of services by SMEs [2, 11].

Bridge Digital Divide: Cloud computing present a huge opportunity for growing economy or third world countries to bridge digital divide in IT revolution with developed world, by adopting cloud computing technologies to deploy and deliver ranges of IT services. Practically, the growing economies or third world countries will find it difficult if not impossible to achieve IT delivery strategies in absence of cloud computing due to lack of resources to setup traditional IT environment [2].

Easy Access to Resource: Cloud computing enable organizations immediate access to IT resources or services without upfront capital investment rather; services are provision in the cloud and accessed by pay-per-use on demand model, leading to quick resumption or commencement of business operations [2, 11, 17].

Reduced Carbon Emission: The cost benefits of cloud computing is not limiting only to capital amounts users can save by not purchasing hardware-related IT devices or maintaining and managing in-house IT infrastructure; however, it extend to the ability of users having a considerable level of carbon footprint reduction as a result of adopting or using cloud computing business solutions. Recent research, suggested ICT is already contributing 2 % of carbon emissions globally due to extensive use of computer-related technologies in organizations, meaning the cloud virtualized services will drastically contribute to reduction of carbon emissions [7, 17].

Scalability: Cloud computing enable enterprises to easily scale resources dynamically up and down in real time according to requirement, thereby reducing cost of investment on infrastructure expansion, in addition giving them opportunity of focusing on business growth [2].

Reduced Over Provisioning: Cloud computing helps business reduce cost of over provisioning of IT resources by enabling them, including users ubiquity access to IT services via internet anywhere, any device at any location in the world [8].

7 Cloud Computing Security Issues

Recently, an investigation into cloud computing reported vulnerability incidents reveals that the number of vulnerability incident has risen considerably over the past 5 years. The insecure interfaces, hardware failure and data loss or leakage combined together constitute about 25 % of known threat and generally accounts for 64 % of overall cloud computing vulnerability incident [6]. The security of data stored, accessed, or transmitted in cloud remains a big concern to enterprises and users. Cloud Security threats and issues, as displayed in Fig. 2, include: Denial of services attacks and distributed denial of services attack (DoS, DDoS), Insider and Malicious outsider attacks, Cross-site scripting, Virtual machine rootkit, XML wrapping, Service disruption, legal issues, privacy, Loss of data control, Multi-location and Multi-tenancy remains a critical concern to adoption of cloud computing.

Fig. 2
figure 2

Cloud computing security issues

Multi-location: The storage of data in multi-location in cloud computing has a critical security implications to enterprises data resources. The risks include accidental occurrences that emerge from situation where cloud third party provider goes out of business or may decide to freeze or seize cloud data in event of industrial dispute or legal proceedings pending resolution. This may result to complete business collapse to cloud subscribers. Most importantly, such situation may entail legal nightmare to enterprises in incident of data compromise oversee where countries information misuse; legal jurisdiction does not permit culprit extradition or an extradition agreement does not exist between nations involved. Other related security impact to cloud data in multi-location is legislation made within state boundaries of some technological powers such as USA Patriot Act. Recently the act has prompted Canada to urge its government to desist from using network connected systems, operated within USA borders due to uncertainty relating to confidentiality and privacy of Canadian data stored in those computers [2, 14].

Multi-tenancy: The design of cloud computing was architecturally focused to meet its primary objective as a shared computational resource, residing physically or logically at providers domain to serve multiple users. This means users can access and share same cloud infrastructure resources. The multi-tenancy deployment approach used by cloud providers present a serious security risk such as VM to VM attack or information exploitation [14].

Privacy: Data and information privacy remain a critical security issue in cloud computing. Presently, legislative restriction on privacy or private information regulation varies across countries. Therefore, customer data storage across multiple sites particularly nation’s boundaries present serious security risk to information confidentiality and legal challenges toward privacy [7, 14].

DoS, DDoS: This type of attack is popular in network security where access to computer resources by authorized users is impaired by Smurf, SYN flood, UDP and ICMP attacks. Part of the attacks process involve raising system CPU task by overwhelming the target victims with request thereby making the system to slowdown or crashing the system, and this can result to loss of availability. DoS and DDoS possess a real-time security threat to Cloud computing infrastructure [14].

Insider and Malicious Outsider Attacks: Cloud computing users are exposed to this kind of attacks as cloud is based on multi-tenant representation under single domains of providers. Users are not aware of standards used by providers to hiring personnel or data storage processes in multi cloud locations. Poor practices in this respect by providers may result in successful insider attacks by third party employees engaging in sensitive data theft for the purpose of selling to competitors of victim’s organization or corporate espionage such as information exposure. Outsider attack entails defacing or openly releasing confidential information and the attackers utilizes easy accessibility to cloud as advantage in exploiting cloud API weaknesses [14].

Virtual Machine Rootkit: Cloud computing is susceptible to this form of attack, as the most important component of cloud is virtualization where operating system and vital components are typically packaged to be hardware independent. This is achieved when the system with privileged small kernel known as hypervisor are multiplexed. The Virtual Machine Rootkit classified same as hypervisor is a latest form of malware which can be possibly installed underneath layer of operating system and hoist operating system to VM [14].

XML Wrapping and Cross-Site Scripting: The essential implementation technology for Service Oriented Architecture is web service including for interoperability and platform independent. Generally, the underlying mark up language used as intermediary for server and client communication is XML. XML signature enables unauthorized modification and origin authentication for any XML specific documents, and this raises a critical security concern for cloud computing. While Cross-site scripting is used to exploit vulnerability in web application by injecting malicious code in client machine. This has potentiality of impersonating user credentials when an attacker successfully introduces his own script to enable him engage in malicious activities like session hi-jacking or craft fishing [14].

Service Disruption: Service disruption or service hi-jacking represent a critical security challenges to cloud computing infrastructure attacks such as software vulnerability and phishing. Attack such as eavesdropping, sessions replay or redirection of enterprise clients to illegitimate sites can be mounted using compromised enterprise login credentials. The softest target for this kind of attack remains internet connected machines, IP addresses, and extension potentially exposed via internet tools such as WHOIS [14].

Loss of Control: When users or enterprises move their resources to the cloud, they will not only lose control of their data but also awareness of where they are stored in cloud, since it can be possibly stored anywhere. This process of storage from user’s perspective has a security issue as they lost control and also awareness of type of security mechanism used to protect their resources in cloud [7, 14].

8 Prototype of Cloud Computing Platform

Cloud computing varies in models although share similar characteristics such as resource pooling, elasticity, multi-tenancy, and on demand self-service. In this section, a prototype of private cloud computing platform will be implemented based on Microsoft private cloud solution such as Windows 2012 Server with Hyper-V server 2012 including System Centre 2012 as shown in Fig. 3.

Fig. 3
figure 3

Cloud platform architecture

8.1 Overview of Hyper-V and System Centre 2012

Hyper view server 2012 and System centre 2012 has capability to enable creation and management of virtualized cloud environment as shown in Fig. 3. The Hyper-V management tools include Virtualisation VMI provider, Windows Hypervisors, Virtual infrastructure driver and the virtualisation service provider (VSP) and VM bus, while System Centre 2012 components include: virtual machine manager (SCVM), Application Controller 2012, Operations Manager 2012 (SCOM), Orchestration Manager 2012 (SCORCH), Service Manager 2012 (SCSM), Configuration Manager 2012 (SCCM), and Data Protection Manager [12].

8.1.1 Platform Setup

Foundation Infrastructure: The first task was to build a foundation infrastructure for the cloud platform, and this was commenced by installing Windows Server 2012 on physical server, installing Hyper-V Server 2012 role as integrated in Windows Server 2012. Subsequent task include: creation of virtual machine (VM) named DCO1 on Hyper-V, installation of Windows Server 2012 on DC01 VM, install active directory (AD), dynamic host configuration protocol (DHCP), domain name server (DNS) including promotion of the server to Domain controller and creation of domain user accounts, installation of Exchange Server, Web Server, Windows Update Server, File, Print, IIS Server, and SharePoint Server to present front end for all users including dash board and request portals as shown in Table 2 was followed by creation of two VM on Hyper-V and installing, configuring Windows Server 2012 as domain member server, and Windows 7 professional as a client, respectively. Further installation include: System Centre 2012 components such as Application Controller for cloud and virtual machine request, Operational Manager 2012 for managing and monitoring purposes, Orchestration Manager 2012 for integration and automation, Configuration Manager 2012 with central site role as well as primary site role, Endpoint Protection Services for end user support, and enabling Data warehousing and CMD services.

Table 2 Platform components

Creation of Logical Network: This stage was used to configure three logical networks on Hyper-V console named: CloudLAB (VLAN) 001, CloudLAB (VLAN) 002, and CloudLAB (VLAN) 003, and this will be used as the fabric based communication. Three virtual (VLAN) IP Pools were also created and associated to the three Logical networks including setting up their IP address ranges as required.

Creation of Virtual Hard Disk (VHD): VHD was crested as storage host and this was accomplished by utilizing SMB 3 integrated in Server 2012 as virtual storage, managed exclusively with file server. A new share file was subsequently created including classification section configured and linked to the platform host device.

Setup Virtual Machine Manager: The core component of System Centre 2012 is virtual machine manager (VMM) used for managing the environment, specifically focusing on Hyper-V and users that utilize cloud resources. Prior to setting up VMM, efforts were focused to ensure all pre-requisite such as IIS role, .Net frame work 3.5.1, Windows automated installation kit (AIK) used by VMM for image management and physical bare metal deployment services, SQL native client and SQL command line utilities used by VMM for communicating to SQL server are fully installed. This was followed by installing VMM features such as VMM Management server, VMM console, and VMM self-service portal. Further task include, configuring database section using the database details installed earlier, configuring VMM service account, and distributed key management, specifying hosting server name running SCVMM, and it was completed without error. The console window includes useful management features such as Fabric, Library, Jobs, Settings, VMs, and views.

Add Hyper-V Host to VMM Console: The Hyper-V host was added to the VMM console to enable efficient management of platform, and this was carried out by clicking on Add Resources button on VMM console window and from option drop down click to select Hyper-V Host and Cluster, next at credential windows click to select check box next to Manually option, administrative account name and password was entered, then click next to continue, on discovery scope window enter the host server name and click next, at the target resources window the wizard scans network and display the host server found, click on the server to select it and click next, on host setting window accept host group by ticking check box next to reassociate this host with this VMM environment and click next, now click finish to complete wizard.

Creation of Cloud: This stage is used to create a cloud on VMM console where resources can be positioned for access by cloud tenants. The task begins by right clicking on cloud button within VMM console and select create cloud from drop down option to start cloud wizard, at the next window write name of the cloud and click next, then select all default host as cloud resources, at next windows select CloudLAB (VLAN) as logical network, click next twice to select high bandwidth and Port classification, on the library click add to add Windows Server 2012 ISO image created earlier to be used as cloud resource services, now set capacity for memory and storage, in capability windows select Hyper-V and next select Hyper-V as VM type, click finish to complete setup.

Setup Tenant on the Cloud: The next task was used to create Tenants using the wizard in the cloud created earlier by configuring profile, members, quotas, networking, user role, user action—such as start, save, stop, shut down, remote connection to VM, deploy, and local admin—in addition configure run as account.

Positioning Resources in Library: The task of positioning resources begin by navigating to VMM console, right click library, and click on MSSCVMMLibrary to open it, on MSSCVMMLibrary window right click on MSSCVMMLibrary and on drop down option click explore, windows explorer opened, on displayed folders find and double click to open ISO folder saved earlier, select ISO image and click ok, now the ISO image of Windows servers 2012 loads into the MSSCVMMLibrary and positioned the image as cloud resource, next right click MSSCVMMLibrary, click refresh to complete the process [12].

Accessing Cloud Resources: Finally, cloud resources can be accessed by navigating to upper corner of the console window to click the drop down link and select Open New Connection, next at logon window enter user credential of cloud user Tenant at name and password spaces as required, then click connect, SCVMM will now open a new window showing a brand new VMM window displaying tenant user name account in upper pane successfully logged into the cloud environment and being able to see his VM network and all his cloud accessible resources. The platform is completely dynamic as numerous opportunities exist for resources pooling, extensions, clustering scalability, self-services, and rapid elasticity. Cloud computing services such as Platform as a Service, Software as a Service and Infrastructure as Service can be achieved within the platform.

9 Conclusion

Cloud computing is a novel internet-based IT technology broadly used and rapidly evolving in recent reminiscences. The innovation can help enterprises to accomplish much with less expenditure in longer terms. This paper have presented in detail, cloud computing models, services, characteristics, enterprise cloud implementation, utility classes, advantages, security issues, and prototype of cloud computing platform. This will help enlighten enterprises and users while making decision on types of services obtainable and current concerns on cloud computing.