A Review on Cloud Computing

Download Full-Text PDF Cite this Publication

Text Only Version

A Review on Cloud Computing

1Barun Kumar Thakur, 2Yashpal Singh 1,2Department of Computer Science &Engineering, Ganga Institute of Technology and Management, Kablana, Jhajjar, Haryana, India

AbstractCloud computing has recently emerged as a new paradigm for hosting and delivering service on internet. Builds on decades of research in virtualization, distributed computing, utility computing, and more recently networking, Web and software services. It implies a service oriented architecture, reduced information technology overhead for the end-user, great flexibility, reduced total cost of ownership, on-demand services and many other things. This paper discusses the concept of cloud computing, some of the issues it tries to address, related research topics, and a cloud implementation available today.

Keywords: Cloud computing, virtual computing lab, virtualization, utility computing, end-to-end quality of service

I. INTRODUCTION

Cloud computing is a recently evolved computing terminology or metaphor based on utility and consumption of computing resources. Cloud computing involves deploying groups of remote servers and software networks that allow centralized data storage and online access to computer services or resources. Clouds can be classified as public, private or hybrid.

Cloud computing relies on sharing of resources to achieve coherence and economies of scale, similar to a utility (like the electricity grid) over a network. At the foundation of cloud computing is the broader concept of converged infrastructure and shared services.

Cloud computing, or in simpler shorthand just "the cloud", also focuses on maximizing the effectiveness of the shared resources. Cloud resources are usually not only shared by multiple users but are also dynamically reallocated per demand. This can work for allocating resources to users. For example, a cloud computer facility that serves Indian users during Indian business hours with a specific application (e.g., email) may reallocate the same resources to serve American users during America's business hours with a different application (e.g., a web server). This approach should maximize the use of computing power thus reducing environmental damage as well since less power, air conditioning, rack space, etc. are required for a variety of functions. With cloud computing, multiple users can access a single server to retrieve and update their data without purchasing licenses for different applications.

The term "moving to cloud" also refers to an organization moving away from a traditional CAPEX model (buy the dedicated hardware and depreciate it over a period of time) to the OPEX model (use a shared cloud infrastructure and pay as one uses it).

Proponents claim that cloud computing allows companies to avoid upfront infrastructure costs, and focus on projects that differentiate their businesses instead of on infrastructure. Proponents also claim that cloud computing allows enterprises to get their applications up and running faster, with improved manageability and less maintenance, and enables IT to more rapidly adjust resources to meet fluctuating and unpredictable business demand. Cloud providers typically use a "pay as you go" model. This can lead to unexpectedly high charges if administrators do not adapt to the cloud pricing model.

The present availability of high-capacity networks, low- cost computers and storage devices as well as the widespread adoption of hardware virtualization, service- oriented architecture, and autonomic and utility computing have led to a growth in cloud computing.

Cloud vendors are experiencing growth rates of 50% per annum.

Fig 1: Cloud Computing

BRIEF HISTORY

Origin of the term: The origin of the term cloud

computing is unclear. The expression cloud is commonly used in science to describe a large agglomeration of objects that visually appear from a distance as a cloud and describes any set of things whose details are not inspected further in a given context.

The cloud symbol was used to represent the Internet as early as 1994, in which servers were then shown connected to, but external to, the cloud.

References to cloud computing in its modern sense appeared early as 1996, with the earliest known mention in a Compaq internal document.

The popularization of the term can be traced to 2006 when Amazon.com introduced the Elastic Compute Cloud.

The 1950s: he underlying concept of cloud computing dates to the 1950s, when large-scale mainframe computers were seen as the future of computing, and became available in academia and corporations, accessible via thin clients/terminal computers, often referred to as "dumb terminals", because they were used for communications but had no internal processing capacities. To make more efficient use of costly mainframes, a practice evolved that allowed multiple users to share both the physical access to the computer from multiple terminals as well as the CPU time. This eliminated periods of inactivity on the mainframe and allowed for a greater return on the investment. The practice of sharing CPU time on a mainframe became known in the industry as time-sharing. During the mid 70s, time-sharing was popularly known as RJE (Remote Job Entry); this nomenclature was mostly associated with large vendors such as IBM and DEC.

The 1990s: In the 1990s, telecommunications companies, who previously offered primarily dedicated point-to-point data circuits, began offering virtual private network (VPN) services with comparable quality of service, but at a lower cost. By switching traffic as they saw fit to balance server use, they could use overall network bandwidth more effectively. They began to use the cloud symbol to denote the demarcation point between what the provider was responsible for and what users were responsible for. Cloud computing extends this boundary to cover all servers as well as the network infrastructure.

As computers became more prevalent, scientists and technologists explored ways to make large-scale computing power available to more users through time-sharing. They experimented with algorithms to optimize the infrastructure, platform, and applications to prioritize CPUs and increase efficiency for end users.

Since 2000: In early 2008, Eucalyptus became the first open-source, AWS API-compatible platform for deploying private clouds. In early 2008, OpenNebula, enhanced in the RESERVOIR European Commission-funded project, became the first open-source software for deploying private and hybrid clouds, and for the federation of clouds. In the same year, efforts were focused on providing quality of service guarantees (as required by real-time interactive applications) to cloud-based infrastructures, in the framework of the IRMOS European Commission-funded project, resulting in a real-time cloud environment. By mid-2008, Gartner saw an opportunity for cloud computing "to shape the relationship among consumers of IT services, those who use IT services and those who sell them" and observed that "organizations are switching from company-owned hardware and software assets to per-use service-based models" so that the "projected shift to computing … will result in dramatic

growth in IT products in some areas and significant reductions in other areas."

In July 2010, Rackspace Hosting and NASA jointly launched an open-source cloud-software initiative known as OpenStack. The OpenStack project intended to help organizations offer cloud-computing services running on standard hardware. The early code ame from NASA's Nebula platform as well as from Rackspace's Cloud Files platform.

On March 1, 2011, IBM announced the IBM SmartCloud framework to support Smarter Planet. Among the various components of the Smarter Computing foundation, cloud computing is a critical piece.

On June 7, 2012, Oracle announced the Oracle Cloud. While aspects of the Oracle Cloud are still in development, this cloud offering is posed to be the first to provide users with access to an integrated set of IT solutions, including the Applications (SaaS), Platform (PaaS), and Infrastructure (IaaS) layers.

  1. CLASSIFICATION

    Cloud computing is typically classified in two ways:

    1. Location of the cloud computing

    2. Type of services offered

      1. Location of the cloud

        Cloud computing is typically classified in the following three ways:

        Fig 2: Types of Cloud Computing

        Public cloud: In Public cloud the computing infrastructure is hosted by the cloud vendor at the vendors premises. The customer has no visibility and control over where the computing infrastructure is hosted. The computing infrastructure is shared between any organizations.

        1. Private cloud: The computing infrastructure is dedicated to a particular organization and not shared with other organizations. Some experts consider that private clouds are not real examples of cloud computing. Private clouds are more expensive and more secure when compared to public clouds.

          Private clouds are of two types: On-premise private clouds and externally hosted private clouds. Externally hosted private clouds are also exclusively used by one organization, but are hosted by a third party specializing in

          cloud infrastructure. Externally hosted private clouds are cheaper than On-premise private clouds.

        2. Hybrid cloud Organizations may host critical applications on private clouds and applications with relatively less security concerns on the public cloud. The usage of both private and public clouds together is called hybrid cloud. A related term is Cloud Bursting. In Cloud bursting organization use their own computing infrastructure for normal usage, but access the cloud using services like Salesforce cloud computing for high/peak load requirements. This ensures that a sudden increase in computing requirement is handled gracefully.

        3. Community cloud involves sharing of computing infrastructure in between organizations of the same community. For example all Government organizations within the state of California may share computing infrastructure on the cloud to manage data related to citizens residing in California.

      2. Classification based upon service provided

    Based upon the services offered, clouds are classified in the following ways:

      1. Infrastructure as a service (IaaS) involves offering hardware related services using the principles of cloud computing. These could include some kind of storage services (database or disk storage) or virtual servers. Leading vendors that provide Infrastructure as a service are Amazon EC2, Amazon S3,Rackspace Cloud Servers and Flexiscale.

      2. Platform as a Service (PaaS) involves offering a development platform on the cloud. Platforms provided by different vendors are typically not compatible. Typical players in PaaS are Googles Application Engine, Microsofts Azure, Salesforce.com, force.com .

      3. Software as a service (SaaS) includes a complete software offering on the cloud. Users can access a software application hosted by the cloud vendor on pay-per-use basis. This is a well-established sector. The pioneer in this field has been Salesforce.coms offering in the online Customer Relationship Management (CRM) space. Other examples are online email providers like Googles gmail and Microsofts hotmail, Google docs and Microsofts online version of office called BPOS (Business Productivity Online Standard Suite).

        Fig 3: Software as a SaaS

        The above classification is well accepted in the industry. David Linthicum describes a more granular classification on the basis of service provided. These are listed below:

        1. Storage-as-a-service

        2. Database-as-a-service

        3. Information-as-a-service

        4. Process-as-a-service

        5. Application-as-a-service

        6. Platform-as-a-service

        7. Integration-as-a-service

        8. Security-as-a-service

        9. Management/Governance-as-a-service

        10. Testing-as-a-service

        11. Infrastructure-as-a-service

  2. ARCHITECTURE OF A CLOUD COMPUTING

    A. Cloud Computing Architecture

    Fig 4: Architecture of Cloud Computing

    When talking about a cloud computing system, it's helpful to divide it into two sections: the front endand the back end. They connect to each other through a network, usually the Internet. The front end is the side the computer user, or client, sees. The back end is the "cloud" section of the system.

    The front end includes the client's computer (or computer network) and the application required to access the cloud computing system. Not all cloud computing systems have the same user interface. Services like Web-based e- mail programs leverage existing Web browsers like Internet Explorer or Firefox. Other systems have unique applications that provide network access to clients.

    On the back end of the system are the various computers, servers and data storage systems that create the "cloud" of computing services. In theory, a cloud computing system could include practically any computer program you can imagine, from data processing to video games. Usually, each application will have its own dedicated server.

    A central server administers the system, monitoring traffic and client demands to ensure everything runs smoothly. It follows a set of rules called protocols and uses a special

    kind of software called middleware. Middleware allows networked computers to communicate with each other. Most of the time, servers don't run at full capacity. That means there's unused processing power going to waste. It's possible to fool a physical server into thinking it's actually multiple servers, each running with its own independent operating system. The technique is called server virtualization. By maximizing the output of individual servers, server virtualization reduces the need for more physical machines.

    If a cloud computing company has a lot of clients, there's likely to be a high demand for a lot of storage space. Some companies require hundreds of digital storage devices. Cloud computing systems need at least twice the number of storage devices it requires to keep all its clients' information stored. That's because these devices, like all computers, occasionally break down. A cloud computing system must make a copy of all its clients' information and store it on other devices. The copies enable the central server to access backup machines to retrieve data that otherwise would be unreachable. Making copies of data as a backup is called redundancy.

  3. APPLICATIONS

    Cloud computing has been credited with increasing competitiveness through cost reduction, greater flexibility, elasticity and optimal resource utilization. Here are a few situations where cloud computing is used to enhance the ability to achieve business goals.

    1. Infrastructure as a service (IaaS) and platform as a service (PaaS)

      When it comes to IaaS, using an existing infrastructure on a pay-per-use scheme seems to be an obvious choice for companies saving on the cost of investing to acquire, manage and maintain an IT infrastructure. There are also instances where organizations turn to PaaS for the same reasons while also seeking to increase the speed of development on a ready-to-use platform to deploy applications.

    2. Private cloud and hybrid cloud

      Among the many incentives for using cloud, there are two situations where organizations are looking into ways to assess some of the applications they intend to deploy into their environment through the use of a cloud (specifically a public cloud). While in the case of test and development it may be limited in time, adopting a hybrid cloud approach allows for testing application workloads, therefore providing the comfort of an environment without the initial investment that might have been rendered useless should the workload testing fail.

      Another use of hybrid cloud is also the ability to expand during periods of limited peak usage, which is often preferable to hosting a large infrastructure that might seldom be of use. An organization would seek to have the additional capacity and availability of an environment when needed on a pay-as you-go basis.

    3. Test and development

      Probably the best scenario for the use of a cloud is a test and development environment. This entails securing a budget, setting up your environment through physical assets, significant manpower and time. Then comes the installation and configuration of your platform. All this can often extend the time it takes for a project to be completed and stretch your milestones.

      With cloud computing, there are now readily available environments tailored for your needs at your fingertips. This often combines, but is not limited to, automated provisioning of physical and virtualized resources.

    4. Big data analytics

      One of the aspects offered by leveraging cloud computing is the ability to tap into vast quantities of both structured and unstructured data to harness the benefit of extracting business value.

      Retailers and suppliers are now extracting information derived from consumers buying patterns to target their advertising and marketing campaigns to a particular segment of the population. Social networking platforms are now providing the basis for analytics on behavioral patterns that organizations are using to derive meaningful information.

    5. File storage

      Cloud can offer you the possibility of storing your files and accessing, storing and retrieving them from any web- enabled interface. The web services interfaces are usually simple. At any time and place you have high availability, speed, scalability and security for your environment. In this scenario, organizations are only paying for the amount of storage they are actually consuming, and do so without the worries of overseeing the daily maintenance of the storage infrastructure.

      There is also the possibility to store the data either on or off premises depending on the regulatory compliance requirements. Data is stored in virtualized pools of storage hosted by a third party based on the customer specification requirements.

    6. Disaster recovery

      This is yet another benefit derived from using cloud based on the cost effectiveness of a disaster recovery (DR) solution that provides for a faster recovery from a mesh of different physical locations at a much lower cost that the traditional DR site with fixed assets, rigid procedures and a much higher cost.

    7. Backup

    Backing up data has always been a complex and time- consuming operation. This included maintaining a set of tapes or drives, manually collecting them and dispatching them to a backup facility with all the inherent problems that might happen in between the originating and the backup site. This way of ensuring a backup is performed is not immune to problems such as running out of backup media ,

    and there is also time to load the backup devices for a restore operation, which takes time and is prone to malfunctions and human errors.

    Cloud-based backup, while not being the panacea, is certainly a far cry from what it used to be. You can now automatically dispatch data to any location across the wire with the assurance that neither security, availability nor capacity are issues.

    While the list of the above uses of cloud computing is not exhaustive, it certainly give an incentive to use the cloud when comparing to more traditional alternatives to increase IT infrastructure flexibility , as well as leverage on big data analytics and mobile computing.

  4. LIMITATIONS

    For those who follow trends in web hosting, cloud computing is a term that they come across often these days. There are many benefits of cloud computing irrespective of the size of the organization. The benefits include secure and affordable managed hosting, accessibility of data from anywhere at anytime, offsite backup, no need of internal IT resources, scalability and so on. But there are some limitations as well since it is still an evolving technology. Some weaknesses of cloud computing are listed below: Cascading effect

    If there is a problem in data center, all virtual machines are affected. There might or might not be a backup of the data if an enterprise relies only on the cloud for its data management needs.

    Network connection

    The concept assumes that the client has reliable network connection. If there are problems of network connectivity, accessing the cloud also becomes a problem. Performance of the cloud applications also depend on the performance of network at clients side. Upload and download speeds are slower as compared to that of a local server.

    Control of data security

    In a public cloud, the client does not have the control over security of his/ her own data. The clients data can be susceptible to hacking or phishing attacks. Since the servers on cloud are interconnected it is easy for malware to spread.

    Additional costs

    Although cloud computing offers cost benefits, it has some hidden or additional costs as well. Clients are charged extra for data transfer or other services. Initial offerings are priced higher, till economies of scale work out for the service provider.

    Peripherals

    Peripheral devices like printers or scanners might not work with cloud. Many of them require software to be installed locally. Networked peripherals have lesser problems.

    Integration

    Integrating internal applications with those on cloud can be complex and in some cases not viable.

    Generic

    Public cloud offerings are very generic and offer multi- tenancy service which all organizations might not be comfortable with. Implementing an in-house cloud is more complex to implement and are burdensome on internal resources if the organization is not large enough.

    Cloud service providers are continuously evolving solutions to overcome the above mentioned hurdles. Some enterprises are seeing clear benefits in shifting to the cloud and are adopting it unconditionally while some enterprises are moving non-critical applications to test the waters. Some others want to wait and watch how the technology evolves before deciding.

  5. THE FUTURE

There is a wealth of chatter and hype around the cloud right now, especially as more startups continue to go public. Separating the hype and fleeting trends from the reality is often difficult. That said, here are my top five cloud predictions for the coming years:

  1. More application availability on the cloud

    Fig 5: Cloud application availability

    With most new software being built for cloud from the outset, it is predicted that by 2016 over a quarter of all applications (around 48 million) will be available on the cloud (Global Technology Outlook: Cloud 2014: A More Disruptive Phase).

    This makes sense when you consider that about 56 percent of enterprises consider cloud to be a strategic differentiator, and approximately 58 percent of enterprises spend more than 10 percent of their annual budgets on cloud services. The Everest Group, in their recent Enterprise Cloud Adoption Survey, further argues that cloud adoption enables operational excellence and accelerated innovation.

  2. Increased growth in the market for cloud

    According o Gartner, the cloud is here, and it is accelerating globally. Based on their forecast for 2011- 2017, Gartner expects adoption to hit $250 billion by 2017. In the fourth quarter of 2013, we saw this prediction supported by enterprises worldwideenterprises that were increasingly relying on cloud to develop, market and sell products, manage supply chains and more.

    In the same forecast, Gartner also suggested that the worldwide software as a service (SaaS) market would grow at an astounding yearly growth rate of 20.2 percent! This means it will be growing from $18.2 billion in 2012 to

    $45.6 billion in 2017. With that kind of growth expected, it is no wonder that many are companies are rebranding anything that makes sense as a service to get a piece of the pie.

  3. More hybrid cloud adoption

    Gartner proposes that 50 percent of enterprises will have hybrid clouds by 2017. As we see more and more companies adopt cloud, we see CIOs crafting well-thought- out strategies that include cloud. However, pure cloud implementations are the exception and not the rule.

  4. Increased development for the cloud

    More development is going to go to the cloud. According to Evans Data Corporation, there are more than 18 million software developers worldwide yet less than 25 percent are developing for the cloud today. We can expect that as cloud continues to be adopted, more developers will develop for the cloudespecially when you consider that 85 percent of the new software being built today is for cloud according to IDCs article, IT Cloud Services at the Crossroads: How IaaS/PaaS/S aaS Business Models are Evolving.

    IDC concurs with Gartner regarding the growth of these IT services and suggests that 20 percent of all application revenue in 2014 will be generated by SaaS. IDC further suggests that there will be an increase in third-party, commercial and enterprise developers and contributors to cloud application ecosystems, marketplaces and application programming interface (API) exchanges by 2017.

  5. More innovation because of cloud

Increased competition in the cloud space will give way to better products, services and innovation. This last point is a little counterintuitive for any of us that have read Geoffrey Moores book, Crossing the Chasm: Marketing and Selling Disruptive Products to Mainstream Customers. Moore writes that after a vendor establishes a new product or service, its pace of innovation drops. Moore suggests that this occurs because companies need to help their clients adopt the new innovative offering.

Moore named his book Crossing the Chasm after the phenomenon that refers to how companies need to become more like their existing competitors in order to achieve mainstream success. However, this is not what we have seen in the industry so far. In fact, the pace at which organizations are innovating appears to have sped upat least from my perspective.

REFERENCES

[1] http://link.springer.com/article/10.1007/s12599-009-0071-2#page-1

  1. Journal of Computing and Information Technology – CIT 16, 2008, 4, 235246

  2. http://computer.howstuffworks.com/cloud-computing/cloud- computing1.htm

  3. http://computer.howstuffworks.com/cloudcomputing/cloud- computing.htm

  4. http://thoughtsoncloud.com/2014/02/top-7-most-common-uses-of- cloud-computing/

  5. https://meghainfotech.wordpress.com/2011/04/21/limitations-of- cloud-computing/

  6. http://thoughtsoncloud.com/2014/05/future-cloud-computing-5- predictions/

  7. http://thecloudtutorial.com/cloudtypes.html

  8. http://en.wikipedia.org/wiki/Cloud_computing

Leave a Reply

Your email address will not be published. Required fields are marked *