Friday, 23 August 2019

Different Types of Cloud Computing Service Models




Cloud Service Models
Infrastructure-as-a-Service
Platform-as-a-Service
Software-as-a-Service
Identity-as-a-Service
Network-as-a-Service




Cloud Computing Infrastructure as a Service (IaaS)



Infrastructure-as-a-Service provides access to fundamental resources such as physical machines, virtual machines, virtual storage, etc. Apart from these resources, the IaaS also offers:
  • Virtual machine disk storage
  • Virtual local area network (VLANs)
  • Load balancers
  • IP addresses
  • Software bundles
All of the above resources are made available to end user via server virtualization. Moreover, these resources are accessed by the customers as if they own them.
Cloud Computing IaaS

Benefits

IaaS allows the cloud provider to freely locate the infrastructure over the Internet in a cost-effective manner. Some of the key benefits of IaaS are listed below:
  • Full control of the computing resources through administrative access to VMs.
  • Flexible and efficient renting of computer hardware.
  • Portability, interoperability with legacy applications.

Full control over computing resources through administrative access to VMs

IaaS allows the customer to access computing resources through administrative access to virtual machines in the following manner:
  • Customer issues administrative command to cloud provider to run the virtual machine or to save data on cloud server.
  • Customer issues administrative command to virtual machines they owned to start web server or to install new applications.

Flexible and efficient renting of computer hardware

IaaS resources such as virtual machines, storage devices, bandwidth, IP addresses, monitoring services, firewalls, etc. are made available to the customers on rent. The payment is based upon the amount of time the customer retains a resource. Also with administrative access to virtual machines, the customer can run any software, even a custom operating system.

Portability, interoperability with legacy applications

It is possible to maintain legacy between applications and workloads between IaaS clouds. For example, network applications such as web server or e-mail server that normally runs on customer-owned server hardware can also run from VMs in IaaS cloud.

Issues

IaaS shares issues with PaaS and SaaS, such as Network dependence and browser based risks. It also has some specific issues, which are mentioned in the following diagram:
Cloud Computing IaaS Issues

Compatibility with legacy security vulnerabilities

Because IaaS offers the customer to run legacy software in provider's infrastructure, it exposes customers to all of the security vulnerabilities of such legacy software.

Virtual Machine sprawl

The VM can become out-of-date with respect to security updates because IaaS allows the customer to operate the virtual machines in running, suspended and off state. However, the provider can automatically update such VMs, but this mechanism is hard and complex.

Robustness of VM-level isolation

IaaS offers an isolated environment to individual customers through hypervisor. Hypervisor is a software layer that includes hardware support for virtualization to split a physical computer into multiple virtual machines.

Data erase practices

The customer uses virtual machines that in turn use the common disk resources provided by the cloud provider. When the customer releases the resource, the cloud provider must ensure that next customer to rent the resource does not observe data residue from previous customer.

Characteristics

Here are the characteristics of IaaS service model:
  • Virtual machines with pre-installed software.
  • Virtual machines with pre-installed operating systems such as Windows, Linux, and Solaris.
  • On-demand availability of resources.
  • Allows to store copies of particular data at different locations.
  • The computing resources can be easily scaled up and down.


Cloud Computing Platform as a Service (PaaS)

Platform-as-a-Service offers the runtime environment for applications. It also offers development and deployment tools required to develop applications. PaaS has a feature of point-and-click tools that enables non-developers to create web applications.
App Engine of Google and Force.com are examples of PaaS offering vendors. Developer may log on to these websites and use the built-in API to create web-based applications.
But the disadvantage of using PaaS is that, the developer locks-in with a particular vendor. For example, an application written in Python against API of Google, and using App Engine of Google is likely to work only in that environment.
The following diagram shows how PaaS offers an API and development tools to the developers and how it helps the end user to access business applications.
Cloud Computing PaaS

Benefits

Following are the benefits of PaaS model:
Cloud Computing PaaS Benefits

Lower administrative overhead

Customer need not bother about the administration because it is the responsibility of cloud provider.

Lower total cost of ownership

Customer need not purchase expensive hardware, servers, power, and data storage.

Scalable solutions

It is very easy to scale the resources up or down automatically, based on their demand.

More current system software

It is the responsibility of the cloud provider to maintain software versions and patch installations.

Issues

Like SaaS, PaaS also places significant burdens on customer's browsers to maintain reliable and secure connections to the provider’s systems. Therefore, PaaS shares many of the issues of SaaS. However, there are some specific issues associated with PaaS as shown in the following diagram:
Cloud Computing PaaS Issues

Lack of portability between PaaS clouds

Although standard languages are used, yet the implementations of platform services may vary. For example, file, queue, or hash table interfaces of one platform may differ from another, making it difficult to transfer the workloads from one platform to another.

Event based processor scheduling

The PaaS applications are event-oriented which poses resource constraints on applications, i.e., they have to answer a request in a given interval of time.

Security engineering of PaaS applications

Since PaaS applications are dependent on network, they must explicitly use cryptography and manage security exposures.

Characteristics

Here are the characteristics of PaaS service model:
  • PaaS offers browser based development environment. It allows the developer to create database and edit the application code either via Application Programming Interface or point-and-click tools.
  • PaaS provides built-in security, scalability, and web service interfaces.
  • PaaS provides built-in tools for defining workflow, approval processes, and business rules.
  • It is easy to integrate PaaS with other applications on the same platform.
  • PaaS also provides web services interfaces that allow us to connect the applications outside the platform.

PaaS Types

Based on the functions, PaaS can be classified into four types as shown in the following diagram:
Cloud Computing PaaS Types

Stand-alone development environments

The stand-alone PaaS works as an independent entity for a specific function. It does not include licensing or technical dependencies on specific SaaS applications.

Application delivery-only environments

The application delivery PaaS includes on-demand scaling and application security.

Open platform as a service

Open PaaS offers an open source software that helps a PaaS provider to run applications.

Add-on development facilities

The add-on PaaS allows to customize the existing SaaS platform.


Cloud Computing Software as a Service (SaaS)



Software-as–a-Service (SaaS) model allows to provide software application as a service to the end users. It refers to a software that is deployed on a host service and is accessible via Internet. There are several SaaS applications listed below:
  • Billing and invoicing system
  • Customer Relationship Management (CRM) applications
  • Help desk applications
  • Human Resource (HR) solutions
Some of the SaaS applications are not customizable such as Microsoft Office Suite. But SaaS provides us Application Programming Interface (API), which allows the developer to develop a customized application.

Characteristics

Here are the characteristics of SaaS service model:
  • SaaS makes the software available over the Internet.
  • The software applications are maintained by the vendor.
  • The license to the software may be subscription based or usage based. And it is billed on recurring basis.
  • SaaS applications are cost-effective since they do not require any maintenance at end user side.
  • They are available on demand.
  • They can be scaled up or down on demand.
  • They are automatically upgraded and updated.
  • SaaS offers shared data model. Therefore, multiple users can share single instance of infrastructure. It is not required to hard code the functionality for individual users.
  • All users run the same version of the software.

Benefits

Using SaaS has proved to be beneficial in terms of scalability, efficiency and performance. Some of the benefits are listed below:
  • Modest software tools
  • Efficient use of software licenses
  • Centralized management and data
  • Platform responsibilities managed by provider
  • Multitenant solutions

Modest software tools

The SaaS application deployment requires a little or no client side software installation, which results in the following benefits:
  • No requirement for complex software packages at client side
  • Little or no risk of configuration at client side
  • Low distribution cost

Efficient use of software licenses

The customer can have single license for multiple computers running at different locations which reduces the licensing cost. Also, there is no requirement for license servers because the software runs in the provider's infrastructure.

Centralized management and data

The cloud provider stores data centrally. However, the cloud providers may store data in a decentralized manner for the sake of redundancy and reliability.

Platform responsibilities managed by providers

All platform responsibilities such as backups, system maintenance, security, hardware refresh, power management, etc. are performed by the cloud provider. The customer does not need to bother about them.

Multitenant solutions

Multitenant solutions allow multiple users to share single instance of different resources in virtual isolation. Customers can customize their application without affecting the core functionality.

Issues

There are several issues associated with SaaS, some of them are listed below:
  • Browser based risks
  • Network dependence
  • Lack of portability between SaaS clouds

Browser based risks

If the customer visits malicious website and browser becomes infected, the subsequent access to SaaS application might compromise the customer's data.
To avoid such risks, the customer can use multiple browsers and dedicate a specific browser to access SaaS applications or can use virtual desktop while accessing the SaaS applications.

Network dependence

The SaaS application can be delivered only when network is continuously available. Also network should be reliable but the network reliability cannot be guaranteed either by cloud provider or by the customer.

Lack of portability between SaaS clouds

Transferring workloads from one SaaS cloud to another is not so easy because work flow, business logics, user interfaces, support scripts can be provider specific.

Open SaaS and SOA

Open SaaS uses those SaaS applications, which are developed using open source programming language. These SaaS applications can run on any open source operating system and database. Open SaaS has several benefits listed below:
  • No License Required
  • Low Deployment Cost
  • Less Vendor Lock-in
  • More portable applications
  • More Robust Solution
The following diagram shows the SaaS implementation based on SOA:
Cloud Computing SOA Implementation of SaaS



Cloud Computing Identity as a Service (IDaaS)



Employees in a company require to login to system to perform various tasks. These systems may be based on local server or cloud based. Following are the problems that an employee might face:
  • Remembering different username and password combinations for accessing multiple servers.
  • If an employee leaves the company, it is required to ensure that each account of that user is disabled. This increases workload on IT staff.
To solve above problems, a new technique emerged which is known as Identity-as–a-Service (IDaaS).
IDaaS offers management of identity information as a digital entity. This identity can be used during electronic transactions.

Identity

Identity refers to set of attributes associated with something to make it recognizable. All objects may have same attributes, but their identities cannot be the same. A unique identity is assigned through unique identification attribute.
There are several identity services that are deployed to validate services such as validating web sites, transactions, transaction participants, client, etc. Identity-as-a-Service may include the following:
  • Directory services
  • Federated services
  • Registration
  • Authentication services
  • Risk and event monitoring
  • Single sign-on services
  • Identity and profile management

Single Sign-On (SSO)

To solve the problem of using different username and password combinations for different servers, companies now employ Single Sign-On software, which allows the user to login only one time and manage the access to other systems.
SSO has single authentication server, managing multiple accesses to other systems, as shown in the following diagram:
Cloud Computing Single Sign-On

SSO Working

There are several implementations of SSO. Here, we discuss the common ones:
Cloud Computing SSO Working
Following steps explain the working of Single Sign-On software:
  • User logs into the authentication server using a username and password.
  • The authentication server returns the user's ticket.
  • User sends the ticket to intranet server.
  • Intranet server sends the ticket to the authentication server.
  • Authentication server sends the user's security credentials for that server back to the intranet server.
If an employee leaves the company, then disabling the user account at the authentication server prohibits the user's access to all the systems.

Federated Identity Management (FIDM)

FIDM describes the technologies and protocols that enable a user to package security credentials across security domains. It uses Security Markup Language (SAML) to package a user's security credentials as shown in the following diagram:
Cloud Computing FIDM

OpenID

It offers users to login into multiple websites with single account. Google, Yahoo!, Flickr, MySpace, WordPress.com are some of the companies that support OpenID.

Benefits

  • Increased site conversation rates
  • Access to greater user profile content
  • Fewer problems with lost passwords
  • Ease of content integration into social networking sites

Cloud Computing Network as a Service (NaaS)


Network-as-a-Service allows us to access to network infrastructure directly and securely. NaaS makes it possible to deploy custom routing protocols.
NaaS uses virtualized network infrastructure to provide network services to the customer. It is the responsibility of NaaS provider to maintain and manage the network resources. Having a provider working for a customer decreases the workload of the customer. Moreover, NaaS offers network as a utility. NaaS is also based on pay-per-use model.

How NaaS is delivered?

To use NaaS model, the customer is required to logon to the web portal, where he can get online API. Here, the customer can customize the route.
In turn, customer has to pay for the capacity used. It is also possible to turn off the capacity at any time.

Mobile NaaS

Mobile NaaS offers more efficient and flexible control over mobile devices. It uses virtualization to simplify the architecture thereby creating more efficient processes.
Following diagram shows the Mobile NaaS service elements:
Cloud Computing Mobile NaaS

NaaS Benefits

NaaS offers a number of benefits as discussed below:
Cloud Computing NaaS Benefits

Independence

Each customer is independent and can segregate the network.

Bursting

The customer pays for high-capacity network only on requirement.

Resilience

The reliability treatments are available, which can be applied for critical applications.

Analytics

The data protection solutions are available, which can be applied for highly sensitive applications.

Ease of Adding New Service Elements

It is very easy to integrate new service elements to the network.

Support Models

A number of support models are available to reduce operation cost.

Isolation of Customer Traffic

The customer traffic is logically isolated.











Characteristics of Cloud Computing

Characteristics of Cloud Computing



characteristics of a Cloud Computing

  1. On demand self Service.
  2. Broad network access.
  3. Resource pooling.
  4. Rapid elasticity.
  5. Measured service.
Characteristics of Cloud Computing
Characteristics of Cloud Computing
  1. On demand self Service : On demand self services such as email, mobile applications,network or server . Here there is no need of humans to provide these services.
  2. Broad network access : Can be able to access from any of the consumer devices such as Mobile Phone, Tablet, Laptop, Workstation.
  3. Resource pooling : Multiple consumers can use multiple physical and virtual resources dynamically assigned and reassigned according to their demand.
  4. Rapid Elasticity : Computing capabilities can be provided to a consumer  automatically.
  5. Measured Service : which he demand. For example in the case of Data Plans in our mobiles if we want limited plan we can subscribe to only limited plan. If we need unlimited plan we can subscribe to that also. Here we pay what we use for(pay per use).
  6. Multi Tenant architecture : Set of resources provided over the cloud and been accessed by number of users across the organization with set of permissions.

What is Cloud Computing ?

What is Cloud Computing?

Cloud Computing can be defined as delivering computing power( CPU, RAM, Network Speeds, Storage OS software) a service over a network (usually on the internet) rather than physically having the computing resources at the customer location.
Example: AWS, Azure, Google Cloud
 Cloud Computing for Beginners
Let’s learn Cloud computing with an example -
Whenever you travel through a bus or train, you take a ticket for your destination and hold back to your seat till you reach your destination. Likewise other passengers also takes ticket and travel in the same bus with you and it hardly bothers you where they go. When your stop comes you get off the bus thanking the driver. Cloud computing is just like that bus, carrying data and information for different users and allows to use its service with minimal cost.



Why the Name Cloud?

The term “Cloud” came from a network design that was used by network engineers to represent the location of various network devices and there inter-connection.  The shape of this network design was like a cloud.
 Cloud Computing for Beginners

Why Cloud Computing?

With increase in computer and Mobile user’s, data storage has become a priority in all fields. Large and small scale businesses today thrive on their data & they spent a huge amount of money to maintain this data. It requires a strong IT support and a storage hub. Not all businesses can afford high cost of in-house IT infrastructure and back up support services. For them Cloud Computing is a cheaper solution. Perhaps its efficiency in storing data, computation and less maintenance cost has succeeded to attract even bigger businesses as well.
Cloud computing decreases the hardware and software demand from the user’s side. The only thing that user must be able to run is the cloud computing systems interface software, which can be as simple as Web browser, and the Cloud network takes care of the rest. We all have experienced cloud computing at some instant of time, some of the popular cloud services we have used or we are still using are mail services like gmail, hotmail or yahoo etc.
While accessing e-mail service our data is stored on cloud server and not on our computer. The technology and infrastructure behind the cloud is invisible. It is less important whether cloud services are based on HTTP, XML, Ruby, PHP or other specific technologies as far as it is user friendly and functional. An individual user can connect to cloud system from his/her own devices like desktop, laptop or mobile.
Cloud computing harnesses small business effectively having limited resources, it gives small businesses access to the technologies that previously were out of their reach.  Cloud computing helps small businesses to convert their maintenance cost into profit. Let’s see how?
In an in-house IT server, you have to pay a lot of attention and ensure that there are no flaws into the system so that it runs smoothly. And in case of any technical glitch you are completely responsible; it will seek a lot of attention, time and money for repair. Whereas, in cloud computing, the service provider takes the complete responsibility of the complication and the technical faults.

Benefits of Cloud Computing

The potential for cost saving is the major reason of cloud services adoption by many organizations.  Cloud computing gives the freedom to use services as per the requirement and pay only for what you use. Due to cloud computing it has become possible to run IT operations as a outsourced unit without much in-house resources.
Following are the benefits of cloud computing:
  1. Lower IT infrastructure and computer costs for users
  2. Improved performance
  3. Fewer Maintenance issues
  4. Instant software updates
  5. Improved compatibility between Operating systems
  6. Backup and recovery
  7. Performance and Scalability
  8. Increased storage capacity
  9. Increase data safety

Types of Clouds

There are four different cloud models that you can subscribe according to business needs:
 Cloud Computing for Beginners
  1. Private Cloud: Herecomputing resources are deployed for one particular organization.  This method is more used for intra-business interactions.  Where the computing resources can be governed, owned and operated by the same organization.
  2. Community Cloud: Herecomputing resources are provided for a community and organizations. 
  3. Public Cloud: This type of cloud is used usually for B2C (Business to Consumer) type interactions.  Here the computing resource is owned, governed and operated by government, an academic or business organization. 
  4. Hybrid Cloud: This type of cloud can be used for both type of interactions -  B2B (Business to Business) or B2C ( Business to Consumer). This deployment method is called hybrid cloud as the computing resources are bound together by different clouds.

Cloud Computing Services

The three major Cloud Computing Offerings are
  • Software as a Service (SaaS)
  • Platform as a Service (PaaS)
  • Infrastructure as a Service (IaaS)
Different business use some or all of these components according to their requirement.
 Cloud Computing for Beginners

SaaS (Software as a Service)

SaaS or software as a service is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network (internet). SaaS is becoming an increasingly prevalent delivery model as underlying technologies that supports Service Oriented Architecture (SOA) or Web Services. Through internet this service is available to users anywhere in the world. 
 Cloud Computing for Beginners
Traditionaly, software application needed to be purchased upfront &then installed it onto your computer. SaaS users on the other hand, instead of purchasing the software subscribes to it, usually on monthly basisvia internet.
Anyone who needs an access to a particular piece of software can be subscribe as a user, whether it is one or two people or every thousands of employees in a corporation. SaaS is compatible with all internet enabled devices.
Many important tasks like accounting, sales, invoicing and planning all can be performed using SaaS.

PaaS (Platform as a Service)

Platform as a service, is referred as PaaS, it provides a platform and environment to allow developers to build applications and services. This service is hosted in the cloud and accessed by the users via internet.
To understand in a simple terms, let compare this with painting a picture, where you are provided with paint colors, different paint brushes and paper by your school teacher and you just have to draw a beautiful picture using those tools. 
 Cloud Computing for Beginners
PaaS services are constantly updated & new features added. Software developers, web developers and business can benefit from PaaS. It provides platform to support application development. It includes software support and management services, storage, networking, deploying, testing, collaborating, hosting and maintaining applications.

IaaS (Infrastructure as a Service)

IaaS (Infrastructure As A Service) is one of the fundamental service model of cloud computing alongside PaaS( Platform as a Service). It provides access to computing resources in a virtualized environment “the cloud” on internet.  It provides computing infrastructure like virtual server space, network connections, bandwidth, load balancers and IP addresses. The pool of hardware resource is extracted from multiple servers and networks usually distributed across numerous data centers.  This provides redundancy and reliability to IaaS.
 Cloud Computing for Beginners
IaaS(Infrastructure as a service) is a complete package for computing. For small scale businesses who are looking for cutting cost on IT infrastructure, IaaS is one of the solutions. Annually a lot of money is spent in maintenance and buying new components like hard-drives, network connections, external storage device etc. which a business owner could have saved for other expenses by using IaaS.

What is Cloud Computing Architecture?

Let’s have a look into Cloud Computing and see what Cloud Computing is made of. Cloud computing comprises of two components front end and back end.  Front end consist client part of cloud computing system. It comprise of interfaces and applications that are required to access the cloud computing platform.
 Cloud Computing for Beginners
While back end refers to the cloud itself, it comprises of the resources that are required for cloud computing services. It consists of virtual machines, servers, data storage, security mechanism etc. It is under providers control.
Cloud computing distributes the file system that spreads over multiple hard disks and machines. Data is never stored in one place only and in case one unit fails the other will take over automatically. The user disk space is allocated on the distributed file system, while another important component is algorithm for resource allocation. Cloud computing is a strong distributed environment and it heavily depends upon strong algorithm. 

Virtualization and Cloud Computing

The main enabling technology for Cloud Computing is Virtualization. Virtualization is a partitioning of single physical server into multiple logical servers.  Once the physical server is divided, each logical server behaves like a physical server and can run an operating system and applications independently.  Many popular companies’s like VmWare and Microsoft provide virtualization services, where instead of using your personal PC for storage and computation, you use their virtual server. They are fast, cost-effective and less time consuming.
For software developers and testers virtualization comes very handy, as it allows developer to write code that runs in many different environments and more importantly to test that code.
Virtualization is mainly used for three main purposes 1) Network Virtualization 2) Server Virtualization  3) Storage Virtualization
Network Virtualization:  It is a method of combining the available resources in a network by splitting up the available bandwidth into channels, each of which is independent from the others and each channel is independent of others and can be assigned to a specific server or device in real time.
Storage Virtualization: It is the pooling of physical storage from multiple network storage devices into what appears to be a single storage device that is managed from a central console. Storage virtualization is commonly used in storage area networks (SANs).
Server Virtualization: Server virtualization is the masking of server resources like processors, RAM, operating system etc, from server users. The intention of server virtualization is to increase the resource sharing and reduce the burden and complexity of computation from users.
Virtualization is the key to unlock the Cloud system, what makes virtualization so important for the cloud is that it decouples the software from the hardware. For example, PC’s can use virtual memory to borrow extra memory from the hard disk. Usually hard disk has a lot more space than memory. Although virtual disks are slower than real memory, if managed properly the substitution works perfectly. Likewise, there is software which can imitate an entire computer, which means 1 computer can perform the functions equals to 20 computers.

Grid Computing Vs Cloud Computing

When we switch on the fan or any electric device, we are less concern about the power supply from where it comes and how it is generated. The power supply or electricity that we receives at our home travels through a chain of network, which includes power stations, transformers, power lines and transmission stations. These components together make a ‘Power Grid’. Likewise, ‘Grid Computing’ is an infrastructure that links computing resources such as PCs, servers, workstations and storage elements and provides the mechanism required to access them.
 Cloud Computing for Beginners
Grid Computing is a middle ware to co-ordinate disparate IT resources across a network, allowing them to function as whole. It is more often used in scientific research and in universities for educational purpose. For example, a group of architect students working on a different project requires a specific designing tool and a software for designing purpose but only couple of them got access to this designing tool, the problem is how they can make this tool available to rest of the students. To make available for other students they will put this designing tool on campus network, now the grid will connect all these computers in campus network and allow student to use designing tool required for their project from anywhere.
Cloud computing and Grid computing is often confused, though there functions are almost similar there approach for their functionality is different.  Let see how they operate-
                      Cloud Computing
                           Grid Computing
  • Cloud computing works more as a service provider for utilizing computer resource
  • Grid computing uses the available resource and interconnected computer systems to accomplish a common goal
  • Cloud computing is a centralized model
  • Grid computing is a decentralized model, where the computation could occur over many administrative model
  • Cloud is a collection of computers usually owned by a single party.
  •  
  • A grid is a collection of computers which is owned by a multiple parties in multiple locations and connected together so that users can share the combined power of resources
  • Cloud offers more services all most all the services like web hosting, DB (Data Base) support and much more
  • Grid provides limited services
  • Cloud computing is typically provided within a single organization (eg : Amazon)
  • Grid computing federates the resources located within different organization.

Utility Computing Vs Cloud Computing

In our previous conversation in “Grid Computing” we have seen how electricity is supplied to our house, also we do know that to keep electricity supply we have to pay the bill. Utility Computing is just like that, we use electricity at home as per our requirement and pay the bill accordingly likewise you will use the services for the computing and pay as per the use this is known as ‘Utility computing’. Utility computing is a good source for small scale usage, it can be done in any server environment and requires Cloud Computing.
 Cloud Computing for Beginners
Utility computing is the process of providing service through an on-demand, pay per use billing method.  The customer or client has access to a virtually unlimited supply of computing solutions over a virtual private network or over the internet, which can be sourced and used whenever it’s required.  Based on the concept of utility computing , grid computing, cloud computing and managed IT services are based.
Through utility computing small businesses with limited budget can easily use software like CRM (Customer Relationship Management) without investing heavily on infrastructure to maintain their clientele base.
                       Utility Computing
                         Cloud Computing
  • Utility computing refers to the ability to charge the offered services, and charge customers for exact usage
  • Cloud Computing also works like utility computing, you pay only for what you use but Cloud Computing might be cheaper, as such, Cloud based app can be up and running in days or weeks.
  • Utility computing users want to be in control of the geographical location of the infrastructure
  • In cloud computing, provider is in complete control of cloud computing services and infrastructure
  • Utility computing is more favorable when performance and selection infrastructure is critical
  • Cloud computing is great and easy to use when the selection infrastructure and performance is not critical
  • Utility computing is a good choice for less resource demanding
  • Cloud computing is a good choice for high resource demanding
  • Utility computing refers to a business model
  • Cloud computing refers to the underlying IT architecture

Security concerns for Cloud Computing

While using cloud computing, the major issue that concerns the users is about its security. 
One concern is that cloud providers themselves may have access to customer’s unencrypted data- whether it’s on disk, in memory or transmitted over the network. 
 Cloud Computing for Beginners
Some countries government may decide to search through data without necessarily notifying the data owner, depending on where the data resides, which is not appreciated and is considered as a privacy breach (Example Prism Program by USA).
To provide security for systems, networks and data cloud computing service providers have joined hands with TCG ( Trusted Computing Group) which is non-profit organization which regularly releases a set of specifications to secure hardware, create self-encrypting drives and improve network security.  It protects the data from root kits and malware. 
As computing has expanded to different devices like hard disk drives and mobile phones, TCG has extended the security measures to include these devices. It provides ability to create a unified data protection policy across all clouds.
Some of the trusted cloud services are Amazon, Box.net, Gmail and many others.

Privacy Concern & Cloud Computing

Privacy present a strong barrier for users to adapt into Cloud Computing systems
There are certain measures which can improve privacy in cloud computing.
  1. The administrative staff of the cloud computing service could theoretically monitor the data moving in memory before it is stored in disk.To keep the confidentiality of a data, administrative and legal controls should prevent this from happening.
  2. The other way for increasing the privacy is to keep the data encrypted at the cloud storage site, preventing unauthorized access through the internet; even cloud vendor can’t access the data either.

Case-Study of Cloud Computing- Royal Mail

  • Subject of Case-Study:Using Cloud Computing for effective communication among staff.
  • Reason for using Cloud Computing:Reducing the cost made after communication for 28,000 employees and to provide advance features and interface of e-mail services to their employees.
Royal mail group, a postal service in U.K, is the only government organization in U.K that serves over 24 million customers through its 12000 post offices and 3000 separate processing sites.  Its logistics systems and parcel-force worldwide handles around 404 million parcel a year. And to do this they need an effective communicative medium. They have recognized the advantage of Cloud Computing and implemented it to their system. It has shown an outstanding performance in inter-communication.
Before moving on to Cloud system, the organization was struggling with the out-of-date software, and due to which the operational efficiency was getting compromised.  As soon as the organization switched on to Cloud System, 28000 employees were supplied with their new collaboration suite, giving them access to tools such as instant messaging and presence awareness.  The employees got more storage place than on local server. The employees became much more productive.
Looking to the success of Cloud Computing in e-mail services and communication .The second strategic move of Royal Mail Group, was to migrating from physical servers to virtual servers, upto 400 servers to create a private cloud based on Microsoft hyper V. This would give a fresh look and additional space to their employees desktop and also provides latest modern exchange environment.
The hyper V project by RMG’s (Royal Mail Group) is estimated to save around 1.8 million pound for them in future and will increase the efficiency of the organization’s internal IT system.