Cloud Computing Layers
The general term Cloud Computing refers to a computational model in which software is hosted, run, and administered in offsite data centers. This software is then provided to the end users, as a service, over the internet. A Cloud Computing environment consists of at least one to three service layers, and each layer provides different types of services. These layers are Infrastructure as a Service (Iaas), Platform as a Service (PaaS), and Software as a Service (SaaS).
What are the differences between the layers?
Infrastructure as a Service
Infrastructure as a Service (IaaS) is simply minimal computing services such as disk storage space, CPU use, and network access. This functionality is used over the Internet and paid for with a per-usage model. In this scenario, the hardware is fully outsourced and the cost to the consumer is based on usage. This service layer is essentially the basic service provided by Utility Computing, described above. As such, this layer does not provide software and the consumer of an IaaS cloud is responsible for installing, maintaining, and licensing any required software components. A Platform as a Service layer can be added on top of this layer in order to provide additional functionality.
Platform as a Service
Platform as a Service (PaaS) is a model that offers a higher level of service than IaaS. This layer builds on the IaaS layer and moves additional server software into the cloud. This type of service provides access to functionality that normally resides on corporate servers. Examples of the services provided as part of PaaS architecture include file servers, Web servers, and email servers. In addition, PaaS may include additional tools that can be used for application development, such as databases and design tools. A Software as a Service layer can be added on top of this layer in order to provide even more services from the cloud.
Software as a Service
Software as a Service (SaaS) is a method of software delivery that builds upon the services provided in the PaaS layer. With this type of service, software is hosted offsite and delivered via the internet. This type of computing has existed since at least 1999, which was before the term Cloud Computing was used. At that time, the technology was referred to as ASP, meaning Application Service Provider. In a SaaS model, the providers of the software typically license the applications to users on a subscription basis. The economies of scale that exist with such a large user base generally allow the subscription price to be much lower than the cost of purchasing, installing, and maintaining the software on desktop computers. This has the effect of changing the business model from one in which customers own the software, to a model in which some external provider owns the software. As a result, the responsibility for the technology infrastructure, software licenses, and patching shift to the provider and allow the end user to save both time and money.