jump to navigation

Cloud Computing . . . . The hip new face of Utility Computing May 12, 2012

Posted by 8237mcraew in Cloud Computing.
trackback

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 (typically the Internet).[1]

What is Utility Computing?

Utility computing and the resource sharing of computing devices is an old concept (at least relative to the rapid progression of technology), first conceptualized in the 1950’s with Herb Grosch’s (author of Grosch’s Law), theorized that the world would be operating off of “dumb” terminal devices powered by a number of large data centers.[1]  Just a decade later, renowned computer scientist John McCarthy conjectured that “If computers of the kind I have advocated become the computers of the future, then computing may someday be organized as a public utility just as the telephone system is a public utility… The computer utility could become the basis of a new and important industry.”[2]  

Elastic provisioning, service provided as a utility on a network, the illusion of infinite resources, sound familiar?  These are all concepts explored in detail in Douglas Parkhill’s book, The Challenge of the Computer Utility.  In case you were wondering, Parkhill’s book was published in 1966.[1]  Utility computing is simply put, the metered service package involving the leveraging of computational resources, such as processing power, storage, and applications.  This allowed the user to avoid the cost of acquiring computing services, allowing them to simply ‘rent’ the services from a provider. [2]

Over the next couple of decades following Parkhhill’s book, utility computing took off in the form of “Time-sharing”.  Time-sharing is the sharing of a computing resource among multiple users, usually by the means of computer multiprogramming and multi-tasking.  As foreseen by Grosch, McCarthy, and Parkhill, time-sharing emerged as a metered service allowing users to utilize the resources of a computer without owning one.

An interesting, but very dated look at time-sharing featuring MIT science reporter John Fitch in an extended interview with MIT professor of computer science Fernando J. Corbato at the MIT Computation Center:[7]

http://www.youtube.com/watch?v=Q07PhW5sCEk

This promoted the development and deployment of interactive software on computing devices. [3] As the engineering of personal computers matured in both capabilities and cost effectiveness, time-sharing was left behind in order to usher in the era of the PC.

Fast forward to the early 21st Century, with the emergence, or should I say, dominance of the Internet. Networking technology has advanced at an exponential rate, with billions of people across the world capable of connecting over the Web via a number of devices.  Over 32.7% of the world population are internet users. [4] Powerful laptops/desktops, smart phones, and tablets have become a fact of modern life providing portable and mobile access to the Internet for work and play.  The availability of high bandwidth Internet has also played a factor in Cloud Computing progress, as it has become seemingly cheap and freely given. [5]

So, what is the Cloud? 

image

According to the US Department of Commerce National Institute of Standards and Technology (NIST), cloud computing is defined as follows:

“Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”[6]

The Cloud, as defined by the NIST, consists of five essential characteristics:

–       on-demand self-service

–       broad network access

–       resource pooling

–       rapid elasticity or expansion

–       measured service

These characteristics are encapsulated in three service models and four models of deployment.

–       Service models

  • Software as a Service (SaaS) – 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.
  • Platform as a Service (PaaS) – The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly configuration settings for the application-hosting environment.
  • Infrastructure as a Service (IaaS) – The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, and deployed applications; and possibly limited control of select networking components (e.g., host firewalls).

–       Deployment models

  • Private – Cloud infrastructure is provisioned for the exclusive use of a single organization/user. Contrary to a common misconception, the Private Cloud can be owned, operated, and managed off-site by a third party.  The organization also has the choice of owning, operating, and managing the Cloud itself, or divides the operation, ownership, or management between themselves and a third party.
  • Community – Cloud infrastructure is provisioned for the exclusive use of a group or community of organizations.  Again, ownership, operation, and management can be handled by a member of the organization, a third party, or a combination of the two.
  • Public – Cloud infrastructure is made available for the general public and is owned, operated, and managed by a private, academic, or government organization.  It can also be provided by a combination of those three.
  • Hybrid – A combination of two or more distinct cloud infrastructures, allowing for the portability of data and applications. [6]

OK, so what’s the difference between Cloud Computing and Time-sharing?

image

VS

image

Well, for starters both offer utility computing as a service.  Both supply consumers with a centralized uber-computing resource, beyond the means of the individual consumers means.  Beyond that the comparison requires a deeper look at characteristics, service models, and models of deployment.

Characteristics

On demand self-service: Here is where cloud computing takes its first big step forward from time-sharing.  Time-sharing required consumers to, oftentimes, wait in line to access a terminal connected to the mainframe.  Cloud computing’s on demand self-service allows the consumer to independently request and/or scale services without any actual human interaction with a service provider.  Increased or decreased services are only a click away.

Broad networking access:  During the advent of time-sharing, systems were operated primarily on corporate, government, and academic networks.  Access was only through dumb, or at least low IQ, terminals connected directly to a mainframe.  Cloud computing on the other hand, provides the capability to allow consumers to access services via a myriad of devices to include workstations, tablets, and smart phones.

Resource pooling: Thanks to the Internet, cloud computing provides consumers with the combined might of multiple computers, servers, and storage areas, as well as high speed bandwidth.  All this is presented to the consumer in a seamless and transparent manner, giving the illusion that a single uber-resource is set aside for them alone.  In contrast, time-sharing only provided the illusion of a dedicated uber-resource to the consumer.  In fact time-sharing shared the resource of a single ‘powerful” computer with multiple users.

Rapid elasticity or expansion: A big no for time-sharing.  However, this has largely become the calling card of cloud services.

Measured service: Barring the differences in rates, this a shared characteristic for both time-sharing and cloud computing.

Service Models

Of the three service models available under cloud computing, only SaaS was available for the time-share consumer.  If an application was not available on the mainframe, it was not available to the consumer.

Models of Deployment

In contrast to flexibility and access to service provided by cloud computing, time-sharing was only available in the private and, to a lesser extent, community deployment models.  If you weren’t part of an organization, you simply did not have access.

Summary

Utility computing has a history of transforming the world of computing.  From its early days of collaborative computing on terminals connected, to the mainframe to the smartphone application utilizing Amazon’s EC2 platform, utility computing has pushed boundaries on networking technology.  Today, we stand amidst the early stages of the cloud revolution.  Building on the framework provided by time-sharing systems, cloud computing is poised to not only take over the business world, but the social lives of many throughout the world.   Cloud computing incorporated the positive attributes of time-sharing (such as resource sharing amongst multiple users and pay-for-use), while making use of the versatility of the Internet to provide on demand, rapid scalability, and the illusion of infinite resources. Operating in the cloud has become hip, cool, and in some cases necessary to stay relevant in our corporate or personal lives.

Resources

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

2. http://en.wikipedia.org/wiki/Utility_computing

4. http://www.internetworldstats.com/stats.htm

5. http://www.leeb.com/content/surf%E2%80%99s-incredible-future-internet-infrastructure

3. http://en.wikipedia.org/wiki/Time-sharing

6. http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf

7. http://www.youtube.com/watch?v=Q07PhW5sCEk

Advertisements

Comments»

No comments yet — be the first.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: