Utility computing in the 21st century
By Simon Probert
Edited by: Tim Mendham
The 'Cloud' is everywhere it seems, in the media, on the web and bandied about by IT companies left right and centre. All the cloud-vendors seem to agree that cloud is "the future of computing". But what actually is cloud computing? Is cloud simply another cunning industry buzzword for selling more servers, or is cloud computing really a 'paradigm shift' in the way we access computing resources?
Arguably it's a bit of both.
To understand if cloud computing does represent an evolution - if not a revolution - in our thinking on the way we process digital information, as well as ideas of data ownership versus access, we need to first understand the fundamentals of what cloud computing is and then examine how this might benefit a business.
In June 2009, IT market analysts Gartner identified the five key characteristics of cloud computing:
- Service-based - Consumers subscribe to services designed to directly fulfill specific needs.
- Scalable and elastic - Computing resources and services can scale up or down depending on the requirements of the consumer.
- Shared - Services leverage a common platform or infrastructure to maximise the efficiency of resources.
- Metered-by-use - Consumers are presented with various payment models based on the usage of services required rather than the cost of equipment.
- Uses internet technologies - Services are delivered using the internet, typically internet protocol (IP) as the service delivery mechanism.
In essence, a range of IT services and resources such as software, desktop environments, networks and communications systems are delivered directly to the consumer over the internet, from a central data centre. While this approach is sometimes called 'infrastructure-as-a-service', it does not mean an end to keyboards or monitors. Rather the software, servers, networking equipment, storage and backup space can all be 'virtualised' - you simply create your desired computing environment or infrastructure 'in the cloud'.
By separating the physical hardware from the services you can accurately measure the consumption of those services and therefore be charged accordingly. As a consumer you only need to pay for the resources you need at any given time - you don't need to buy all the physical computing hardware to support your computing needs.
Consumers of electricity don't rush out and buy a power station. They purchase and consume the amount of power they need to go about their daily lives; they rarely worry about how that electricity gets to them. Why should computing be any different? Why should you need to invest in computing infrastructure when you can simply purchase what you need to get the job done and stick it on a utility bill. Does all this sound familiar? The idea of computing as a utility is not new. John McCarthy, then a researcher in artificial intelligence at MIT, stated in 1961 to the MIT centennial conference that: "If computers of the kind I have advocated become the computers of the future, then computing may someday be organised 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."
Nearly 50 years on, we have seen the growth of mainframes, networked terminals, networked computers, the internet, ASPs, MSPs, SaaS and so on, each a stepping stone on the path to achieving true utility computing. One could argue that the emergence of cloud computing is the first large-scale implementation of public utility computing - it neatly fits together the many different complex parts of the puzzle and presents them to the consumer in easy-to-swallow metered-by-use chunks.
Cloud computing itself is often confused with SaaS (software-as-a-service), which is hardly surprising as SaaS solutions do display the characteristics outlined above with one exception. SaaS delivers specific applications to the end-user's desktop via a web browser, the application functionality is rendered as a web page and then controlled through that webpage. Google Docs and Salesforce.com are examples of this approach. Cloud is somewhat different, while still using the internet as the service delivery layer, it can deliver the entire environment to the end-user, that is operating system, applications, communications (such as VoIP) and networking functionality. This means that existing and well-established software applications such as Microsoft Office can be delivered as a service, even the operating system itself can become a service. To really understand the difference simply fire up Google Docs and attempt to install your own application on there - you can't. With a cloud hosted desktop, you can.
What about MSPs (managed service providers) and ASPs (application service providers)? Aren't they the same thing as cloud? They are very similar in essence but again not the same. Typically, an MSP will lease dedicated server systems to a company which will either be on-premise or in a server facility somewhere. They then provide a management layer and support services. This means that the consumer is effectively locked to that supplier and their hardware and scalability means pulling the box out of the rack and inserting more RAM. An ASP is slightly different again. Many ASPs have evolved into SaaS and MSPs, but pure-play ASPs deliver specific applications to the end user usually over a terminal session - once again application-based rather than service-based.
Cloud computing, in principle, is not dissimilar to the mainframes of the past - huge computers accessed by dedicated networked terminals. Nowadays the huge computer lives in a data centre, 'the cloud' - the terminal is your PC, thin client or mobile device and you access your services over the internet. A simple way of understanding cloud is this: All those servers and cables and boxes and IT junk cluttering up your office space, and sucking up your management time making it all work, are gradually replaced by a big computer somewhere else that you never need to see or worry about. And in the same way that electricity is agnostic - you can use electricity to power a refrigerator, television, toaster or a lava lamp - raw computing power in the form of processor time, RAM and storage is agnostic too. It can be your operating system, telephone exchange, backup system or anything else you might need. Remember, the services consumed are distinctly separate from the device powering those services.
Benefits of cloud computing
An example of how cloud can directly benefit a small business is where that business has a several locations and between five and 15 computer users at each location. Chances are the business is too small and the locations too dispersed to employ a dedicated IT manager, which means that the business is supporting two or three independent networks, backup file servers and the like using IT support contractors. The challenge is to maintain consistency and security across each individual business unit while still guaranteeing access to the services needed to run the business. In this scenario cloud looks attractive - cloud services are not location dependent, this small business could fulfil its entire computing requirements directly from the cloud and the business could function as a single unit from the IT perspective, rather than the existing dispersed information silos. At the grass roots level, cloud only needs terminals - existing PCs are fine for this - and internet connectivity.
The main business benefit, in addition to cost savings, is that cloud-based IT services move the IT budget from a capital expense to an operational expense.
- The cost of ownership can be managed as part of monthly accounts
- There is no upfront capex
- Much lower management and maintenance costs
- Service continuity
The move to cloud is non-disruptive. From a consumer's perspective, nothing actually changes: they sit down at their desk, fire up their computer and there are all the applications and services exactly as before, the only difference is that their desktop and applications are now sitting on the big computer somewhere else, not under their desk.
As hardware becomes redundant in the business, computers can be replaced by thin clients. These are small units that you plug a keyboard and mouse into, then connect to the internet. No moving parts or in-built functionality means that the shelf life of these boxes is considerably longer than a regular PC and they consume a fraction of the power.
When the next whizz-bang operating system or fancy 'solve-all-your-problems-at-the-push-of-a-button' application comes along, businesses no longer need to worry about hardware or software upgrades - they simply update their cloud services.
Drawbacks of cloud computing
Naturally, managed services providers, SaaS players and IT support companies are not entirely happy with cloud computing. Nor probably are IT departments, whose main activity - much to their chagrin - is the maintenance and upgrading/updating of their in-house computer resources. (Some authorities put maintenance up to 80 per cent of IT staff's activities.) Cloud might free up most of their time for more 'productive' pursuits, but it also might involve many of them suddenly found without a job.
SaaS players are nervous because shifting end-user operating systems from local to remote hardware mitigates many of the benefits promised by these web-based applications. Managed service providers probably have the most to fear as their entire business model is built around leasing hardware and providing services that they can then manage. However, it is likely that MSPs will embrace cloud when the consumers demand elasticity and scalable computing and no longer want to be tied to lengthy leasing agreements - they are also in a good position to provide these services as they have expertise and existing infrastructure.
At the consumer level, the main concerns are service availability, bandwidth and security.
Service availability - what happens when the internet goes down? Are the users cut off from their 'virtual desktops'? Does all work stop?
The same principles that work at the data centre end can be applied at the consumer end - failover. At a moderately low cost, a second broadband connection can be installed at the consumer's premises. With the right router, load balancing can be achieved over two connections; if one drops out, the other takes up the slack. Admittedly a consumer may see a slight drop in the quality of service until the primary line is restored, but not the complete failure of services envisaged by sceptics. Additionally, because the services are on a remote computer if there is a power cut, an internet drop-out or a wombat chews through the cable, when you do regain access your services come back exactly as you left them with no loss of data.
Bandwidth - as the internet connection is used extensively, there are also some concerns that bandwidth and data transfer may become an issue. In fact, this is quite the opposite. In many cases the data transfer rates actually drop. Because you are accessing data at the data centre, the only information that is passing through the net are highly compressed screenshots of your remote computer - the data itself never actually moves from the cloud.
But does sharing computing hardware with other businesses pose a threat to data?
Security is the perennial IT challenge and a multi-billion dollar industry. With hardware shared between businesses there is a perception that you may be able to gain access to other companies' data or that a virus could spread far more rapidly affecting thousands of virtual machines in the blink of an eye. In fact, the nature of virtualisation is such that each machine exists in its own 'virtual container'; if one crashes it simply crashes the container, not the whole system. Furthermore, applying group application policies and security updates over a range of devices becomes far simpler when they are centrally managed in a cloud. Instead of relying on an individual user or support technician to update security policies, this can all be automated from a centralised control panel. Push a button and all the desktops are magically updated. While enterprise systems have had this ability for some time, it is only recently that these benefits have become available to smaller businesses without the capital or expertise needed to implement autonomous IT infrastructures.
Xhead: Cloud computing today
The cornerstone of cloud computing was laid as early as 2001 when Microsoft launched its service provider licensing agreement (SPLA). The agreement allowed services providers to commercially host Microsoft products as well as re-sell them on a pay-as-you-go basis. This meant that vendors could effectively 'rent' software without having to cover the licensing costs upfront. The hosting industry saw immediate benefits, leading to a drop in the price of hosting and broadening of services on offer.
Meanwhile, a number of software development companies were developing and refining their virtualisation platforms - software that would allow creating virtual containers to host specific applications and operating systems independently on the same computer. Unfortunately, many of the cost-benefits of approaching computing in this manner were eroded by the high cost of the virtualisation software itself. Enter Microsoft again with Windows Server 2008. One of the new enterprise features was extremely low-cost virtualisation, effectively levelling the playing field. The Server release, allied with improved broadband connectivity, cost-effective virtualisation and the ability to license products on a monthly basis, meant that cost rather than management becomes a strong motivating factor. This means that small and medium businesses could now afford to get their hands on a piece of the cloud computing pie.
Even with over 90 per cent of Australian businesses having broadband access, few of these businesses use the capacity for running line-of-business services. Typically, they use it for basic operations like email and web-browsing. Line-of-business applications are either running locally on the user's machines or on an application server within the corporate network.
Cloud offers them the direct benefits of optimising their use of the net and simultaneously minimising in-house IT resources.
However, current players in Australia only have different pieces of the puzzle - until recently nobody has supplied the full range of services. The massive costs involved in setting up Australian-based data centre infrastructure capable of delivering cloud-based services effectively locks smaller service providers out of the market, so it is hardly surprising that early cloud provisioning has been limited to the carrier end of the industry where cloud services are bolted on to existing service offerings. While Australian businesses can access IP-based services from abroad, the latency of such distant services (or the amount of time it takes for a piece of data to get from A to B and back again) becomes an issue, so adoption en-masse is yet to occur. As cloud services do become available locally, we expect the business uptake to be a rapid one.
The future of cloud computing
Given that the big players are very active in the delivery and creation of a new cloud-based service delivery landscape would suggest that the future is very bright for cloud. The increasing capacity of the local broadband network is also a strong indicator that the carriers see a big future in IP and a big future in IP means a big future for cloud computing. Gartner itself predicts that by 2020 over 40 per cent of the world's IT services will be delivered as cloud-based services - that's a whopping big chunk of the IT market.
Is there life after the cloud? Will there come a day where everybody buys their computing resources like they currently buy electricity? While the benefits to business consumers are obvious, there are less immediate or compelling benefits to the regular home user - this may explain why the obvious candidate for piping cloud services into the home, cable, is still largely used for providing the internet connectivity itself rather than directly delivering computing resources.
While the business community will get the early adopter advantage of embracing cloud, over time we will see greater competition which will lead to vendors seeking new ways to package and sell cloud. At time of writing cloud services are available, however many vendors still tie the consumer in to contracts. Sometimes, if you look under the hood, some systems currently sold as cloud are really just dedicated servers, which rather negates the benefit of having a 'metered-by-use' service. However, it is understandable as the definition of cloud computing is still somewhat fluffy. The next generation of true cloud services will be far more granular in their measuring and billing, much as mobile phone providers are today - pretty soon we will be talking about 'processing minutes' and 'dedicated RAM time', one line on your statement might read "User 3 - Microsoft Word Access - 46minutes - $4.60".
Maybe we are finally catching a glimpse of that shifting paradigm we've been promised for so long.
Simon Probert is the managing director of Skybox, one of Australia's first local 'no-contracts' cloud computing services providers.