Cloud computing is defined by NIST as “Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., network, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” Moreover, cloud computing service models generally fall into three main categories, namely infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). Besides, organizations can obtain these cloud services through four cloud computing deployment models, namely public cloud, private cloud, community cloud and hybrid cloud models.
The following five characteristics must be met for any service to be considered a cloud-based service:
- Broad Network Access: Cloud computing resources should be accessible by an authorized cloud user wherever and whenever there is an Internet connection. This principle mainly dictates that cloud computing environments should avail massive resources and make data ubiquitous and easily accessible when and where customers requires it. Due to the proliferation of devices and device-agnostic cloud services, users nowadays are able to connect to the cloud services from a variety of endpoint devices such as laptops, desktops, tablets, smartphones, and other similar devices. Massive physical and virtual resources of cloud computing will be accessible and managed over the network, usually the Internet.
- On-demand Self-Service: Cloud service providers (CSP) enable customers to procure and provision cloud resources by anyone who wants or needs them to support their business functions. On-demand self-service enables customers to request, set up and provision or use cloud services automatically without interacting with other entities. Moreover, on-demand self-service facilitates full cloud provisioning without going through the lengthy approval process in an organization.
- Resource Pooling: Occurs when a cloud service provider groups its cloud resources for shared usage amongst multiple cloud customers or tenants. The resource pooling characteristics of cloud computing enables the CSPs to scale cloud resources up and down depending the need of customers and thereby establish multitenant architecture. Furthermore, CSP specifically pool many thousands of servers, networking devices, storage and other resources to efficiently manage those resources between tenants with minimal resource wastage.
- Rapid Elasticity: Rapid elasticity of cloud computing allows customers to quickly receive additional cloud resources such as server, storage, bandwidth, etc. as per their requirements and thereby achieve scalability requirements. It allows organizations to seamlessly accommodate a sudden spike in network traffic by automatically scaling and provisioning resources on actual loads. Resource pooling and rapid elasticity characteristics work in collaboration to give customers as much compute, storage and networking power as needed.
- Measured Service: Measured service principle of cloud computing works in a similar way to how people might have a gauged use for their water or electric bills. This means, cloud customers can monitor, measure, control, and report on their resources usage and pay accordingly.