Service-Oriented Cloud Computing Infrastructure (SOCCI) Framework – Service-Orientation and Cloud Synergies

 

Characteristics

The combination of Service-Oriented Infrastructure (SOI) and cloud computing realize unique characteristics as listed below.

XaaS

This is the essence of cloud computing. It refers to an increasing number of services that are delivered over a network. Anything as a service requires an understanding of the service objectives and the accounting of service use and quality. The objectives, use, and quality can be determined from the underlying reference model for SOI:

Broad network access (cloud) + resource pooling (cloud) + business-driven infrastructure on-demand (SOI) + service-orientation (SOI) = XaaS

Service Assurance

Cloud computing guarantees certain levels of service to the cloud’s customers. When that service degrades, it is necessary to understand the relationship of infrastructure activity to these services so that the situation can be remediated. SOI facilitates the determination of these relationships:

Operational transparency (SOI) + measured service (cloud) = Service Assurance

Next-Generation Scaling

Demand-driven infrastructure enabled by SOI triggers various forms of scaling supported by the cloud, including scale-out and scale-in supplemented by scale-up and scale-down through the SOI:

Rapid elasticity (cloud) + consumer provider model (SOI) = Next-Generation Scaling

Operational and Tactical Control

The combination of SOI and the cloud computing space realize effective instrumentation of pay-for-use models as well as governance mechanisms controlled by rules leading to policy-based administration:

On-demand self-service (cloud) + service measurement (SOI) + operational transparency (SOI) = Operational and Tactical Control

Comparing SOCCI and XaaS

X as a Service (XaaS) is a generalization for cloud-related services; i.e., those services that comprise the cloud service model per the NIST definition [4]. The most common examples of XaaS are Software as a Service (SaaS), Infrastructure as a Service (IaaS), and Platform as a Service (PaaS). The combined use of these three is sometimes referred to as the SPI model (SaaS, PaaS, IaaS). These are “the most common examples” because the usage of the “as a service” moniker is proliferating. As of today, anything can be provided “as a service”: database as a service, information as a service, etc.

First of all let’s take a look at the IaaS definition [4]. NIST defines IaaS as follows:

“The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems; storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls).”

As this definition implies, IaaS is a service which provides capabilities for the consumer to provision certain infrastructure elements. Meantime, SOCCI is the “underlying cloud infrastructure” which enables IaaS to provide its functionality.

IaaS may entail the provisioning of multiple components including the servers for on-demand computing power, facilities for robust web-hosting, and elastic storage.

There is a striking similarity to the manner in which services are provided in the applications space. Let us say that there is a GetClientAddress web service that retrieves the address information from a back-end database that stores the HR information within an organization. The existence of the enabling components like the database and web/application servers/integration brokers is transparent to the consumer of this service. In a similar fashion, the enabling infrastructure (SOCCI) is not exposed to the consumer of IaaS; instead IaaS is provisioned on top of SOCCI.

The relationship between SOCCI and XaaS is shown in SOCCI is SOI Adoption for Cloud.

Comparing SOCCI and SOA

Service-Oriented Architecture (SOA) is an architectural style for building loosely-coupled systems. It enables the implementation of a technology-based solution without exposing the underlying detail to its consumers. Cloud computing – see Cloud Computing Characteristics – is an SOA and depends on some common attributes in The Open Group SOA Reference Architecture (SOA RA). Given that SOCCI supports both SOA and cloud computing infrastructure, it provides a physical infrastructure that can be leveraged by both worlds, which is a multi-tenant, virtualized infrastructure that leverages SOA principles and the infrastructure components (e.g., server, network, devices, etc.) as the building blocks to facilitate an agile and re-usable infrastructure over the Internet.