Layers and Types of Clouds

Cloud computing services are divided into three classes, according to the abstraction level of the capability provided and the service model of providers, namely:
(1) Infrastructure as a Service,
(2) Platform as a Service, and
(3) Software as a Service .
Figure 1.3 depicts the layered organization of the cloud stack from physical infrastructure to applications. These abstraction levels can also be viewed as a layered architecture where services of a higher layer can be composed from services of the underlying layer.
[wp_ad_camp_1]
Infrastructure as a Service
Offering virtualized resources (computation, storage, and communication) on demand is known as Infrastructure as a Service (IaaS) . A cloud infrastructure enables on-demand provisioning of servers running several choices of operating systems and a customized software stack. Infrastructure services are considered to be the bottom layer of cloud computing systems .
Platform as a Service
In addition to infrastructure-oriented clouds that provide raw computing and storage services, another approach is to offer a higher level of abstraction to make a cloud easily programmable, known as Platform as a Service (PaaS).. Google AppEngine, an example of Platform as a Service, offers a scalable environment for developing and hosting Web applications, which should be written in specific programming languages such as Python or Java, and use the services’ own proprietary structured object data store.
[wp_ad_camp_1]
Software as a Service
Applications reside on the top of the cloud stack. Services provided by this layer can be accessed by end users through Web portals. Therefore, consumers are increasingly shifting from locally installed computer programs to on-line software services that offer the same functionally. Traditional desktop applications such as word processing and spreadsheet can now be accessed as a service in the Web.