You are on page 1of 32

Introduction to cloud computing

From Wikipedia, the free encyclopedia

It has been suggested that this article or section be merged into Cloud computing. (Discuss) Proposed since March 2012.
This article is an accessible, non-technical introduction to the subject. For the main encyclopedia article, see Cloud computing.

The two words in the phrase cloud computing have the following interpretations:

Cloud: As a noun, this is a metaphor for the Internet,[1] and as an adjective it means pertaining to the Internet.[2] This usage derives from the cloud symbols that represent the Internet on diagrams.[1][3]

Computing: Any IT activity carried out:

When using "a local server or a personal computer",[4] which implies that the IT resources are under the exclusive control of the user.

To "store, manage, and process data",[4] which implies that the data is private to the user, in the sense that it is determined by them, even if it is accessible by others.

This means that cloud computing is a type of Internet-based computing, and it consists of every situation where the use of IT resources by an entity, including a person or an organisation, has all of the following characteristics:[1][2][3][4][5][6]

Access to the resources is:

Controlled by the entity, and restricted by them to their authorised users. Delivered via the Internet to all of these users.

The resources are:

Hosted by a service provider on behalf of the entity.

Dedicated to their exclusive use.

Data processed by the resources is:

Private to the entity and its associates. Entered or collected by them, or automatically produced for them.

Depending on the context, cloud computing can mean:

Access to and use of the resources.[4] The hosting and delivery service that provides this access.[3] A model for enabling such access and delivery.[7] The hosted resources or services themselves.[8] The computing execution carried out by the services.[9] Technology used for the provision of the services.[10][11]

[edit]Typical

versus essential characteristics

As well as the above essential features, there are several other characteristics that are typical of some types of cloud computing. Consumption features The cloud-computing consumption model represents characteristics, such as payment, resource-sharing, scaling and access methods, that typically apply only to some examples of cloud computing, because they are optional alternatives rather than being necessary features.[12] For example, no payment method can be an essential characteristic of cloud computing, because there are some free services, and because each different payment method is only typical of certain types of commercial service. Internet versus network accessibility There are several deployment models that make cloud computing available on the Internet in a variety of public or private computer systems. Besides these, there are also IT systems that have some of the same typical characteristics and advantages as cloud computing, but that, for security reasons, are accessible only via a private network, rather than the Internet. These have been described as cloud computing-like,[13] but, because of the shared features, they are sometimes included as part of cloud computing itself.[7]

[edit]

Terminology
services systems

[edit]Cloud

As a hosting service, cloud computing is also known as cloud hosting, or as a cloud service.[1][5][7][14]

[edit]Cloud

The hosted resources are known as cloud resources or cloud systems,[5] and these include cloud software and cloud infrastructure.[1][2][7]

Cloud software includes cloud applications,[15][16] cloud databases[17] and cloud platforms.[2][18] Cloud infrastructure includes cloud storage, cloud servers and cloud networks.[2][7][11][19]

[edit]Cloud

roles

The consumption and provision of cloud computing involves the following roles: [20]

Cloud consumer: Any person or organisation that arranges for the delivery of a cloud service, either for themselves, or for their individual users. In commercial cases, this is the customer that enters into a contract and pays for the service.

Cloud provider: A cloud-system host that delivers cloud services to cloud consumers. Cloud auditor: An independent assessor that vets cloud services on behalf of potential consumers, for example to check security and privacy arrangements.

Cloud broker: A relationship manager and negotiator that connects a cloud consumer with a single cloud provider, or that aggregates services from more than one provider to satisfy the full range of a consumers needs. [21]

Cloud carrier: An intermediary that connects consumers with the provider's cloud systems, such as an ISP that provides Internet access and connectivity.

[edit]Cloud

tenants

The cloud consumers serviced by the same cloud provider are known as tenants of the provider's cloud systems, which are said to be multi-tenanted if they have many consumers, and single-tenanted if they have only one consumer.[22][23] The tenants are the entities that contract for the services, rather than their individual users. Such an entity can be an organisation with many employees, so cloud systems can have a single tenant but many users.

[edit]In

the cloud

Cloud computing happens in the cloud, and:[1][13][23][24][25]

Cloud systems are said to be hosted or located in the cloud. Cloud consumers are said to operate in the cloud.[26] When an organisation converts its IT management to cloud computing, it is said to move into the cloud.[27]

[edit]Cloud

of clouds

When used as a noun, the term cloud is a metaphor for the Internet,[1] but it is also applied to the cloud systems hosted by a cloud provider,[28] and these might be described, for example, as a public cloud. The term cloud of clouds is used for the aggregate of the clouds hosted by several providers that co-operate in delivering cloud services.[21]

[edit]The

Intercloud

The term Intercloud is used for all cloud systems, after an analogy with the word Internet, meaning inter-networks.[29] This is not the same as all websites on the Internet, because there are many that are excluded from cloud computing.

[edit]Cloud

balancing and bursting

Cloud balancing is the day-to-day use by a consumer of more than one cloud provider for load balancing, and cloud bursting is the automatic overflow of demand to a different cloud provider only at peak times.[13][29]

[edit]Cloud

spanning clients

Cloud spanning is the use of more than one cloud service to run different components of an application.[13]

[edit]Cloud

A client computer, or simply a client, is an end-user access point to a computer system, and the term came to prominence with client-server computing. The term cloud client is an application of this concept to cloud computing, and so it is an end-user access point to a cloud system. These include PCs, notebooks, tablets andmobile phones, and the access may be through a web browser or a program interface running on the client.[1][7][30] They are used only to access cloud systems, and they arent part of cloud computing themselves.

[edit]Cloud

datacentres

A datacentre is a facility that houses server computers. For example, a small or medium-sized organisation may place all its servers in one datacentre, and a large organisation may need to place them in several datacentres. Cloud systems are hosted in a cloud datacentre.[24]

[edit]Cloud
Clients

operating systems

A cloud operating system for a cloud client, such as Chrome O/S and Cloud, is a combination of a simple O/S and a web browser that enables a user device with minimal processor and memory resources to access cloud services. Datacentres Unlike a traditional server O/S, such as Windows NT and Unix, which manages the resources of a single server computer, a cloud operating system for a cloud datacentre manages all the servers in the entire datacentre, which are possibly in distributed locations.[31]

[edit]Cloudware
Cloud software is also known as cloudware,[13][32] and it includes cloud:

Applications[15][16] Databases[17] Platforms[18] Datacentre operating systems.[31]

[edit]Cloud

operations

Cloud operations are IT operations that provide, support or develop cloud systems, or that manage cloud datacentres.[33] Cloud operations use cloud engineering, which is the application of systems engineering and software engineering to the design of cloud systems, and cloud architecture, which is the structure of these systems, in terms of their components and the way they interact with each other and with external systems.[1][33]

[edit]Cloud

washing

Cloud washing is "the purposeful and sometimes deceptive attempt by a vendor to rebrand an old product or service by associating the buzzword cloud with it.[34][35]

[edit]

Models
models

Cloud computing has been described as a model for enabling particular types of access to and delivery of IT services. [7]

[edit]Service

There are three main cloud-computing service models, and these represent the three types of computing generally required by consumers: software applications (SaaS) to process their data, platforms (PaaS) to develop applications, and infrastructure (IaaS) to run software and store data.[7][36]

[edit]Software
Software in the cloud

as a Service

Software as a Service (SaaS) provides software that is specific to its consumers end-user requirements, including traditional applications, such as accounting, and email. This is the largest group of cloud services,[36] and it provides a very wide range of software.[14][15][16][37] The host manages the software, and the infrastructure that runs this software and that stores data. It may use its own infrastructure, which is then said to be in-house or on-premise, or it may use another cloud provider for this infrastructure. The consumers do not control the software, beyond the usual configuration settings, or the infrastructure, beyond changing the resources they use, such as the amount of disk space required for their data. For the usual security reasons that apply when managing a datacentre, such as to mitigate against the risk of an infrastructure outage, the host will regularly backup all data, across all tenants, but consumers can also backup their own data in their own disk space. SaaS may be accessible from a variety of cloud clients. Desktop as a Service (DaaS) is the hosting of a desktop PC software environment, including office-productivity applications, such as word processing, by a SaaS provider.[38] This is done so that only a thin client, with perhaps just a web browser, need be used to access all the required software, and this can be financially advantageous for the consumer. Also, it simplifies deployment and administration of the PC environment. DaaS is also known as a cloud desktop or desktop in the cloud.[39]

Database as a Service (DbaaS) is the hosting of database software by a SaaS provider.[40] These are known as cloud databases. Identity as a Service (IDaaS) is the hosting of identity-management software by a SaaS provider.[41]

[edit]Platform

as a Service

Development platforms in the cloud Platform as a Service (PaaS) consists of software-development and deployment platforms, known as cloud platforms, located in the cloud.[18] With this type of service, the host provides a complete software-development and run-time environment, including programming languages and related infrastructure, so that the consumers can either create their own software on this platform, or deploy software that was developed elsewhere, but that needs this same environment to run. The infrastructure can include a database and identity-management, or access-control, software. SaaS development platforms A form of PaaS that can be hosted by SaaS providers consists of their development environment being made available for cloud consumption by third-party developers, so that the applications for their main consumers can be enhanced.[36] One advantage of this approach is that the third-party developers have access to the user data that is stored and processed by the main application. Also, in some cases, consumers can use the development platform to customise the application for themselves. SaaS versus PaaS Software development is itself performed using software, so PaaS and SaaS are related, but PaaS involves software used specifically for development, and all related activities, such as testing and deployment. [25][42] Also, with SaaS, the application is controlled by the host, whether developed by the host or by a third party, but with PaaS, the consumer controls which applications are created or deployed on the providers infrastructure.

[edit]Infrastructure
Hardware in the cloud

as a Service

Infrastructure as a Service (IaaS) consists of hardware infrastructure that is located in the cloud. It includes cloud storage, cloud servers and cloud networks, and is also known as Hardware as a Service (HaaS).[25] The infrastructure can be used to run software or simply to store data. The consumers can be end-users, developers or other cloud providers. For example, SaaS providers can use IaaS providers to run their applications or to store their consumers data. Application agnostic IaaS is application and platform agnostic, which means that any software can be deployed on the infrastructure by the consumers, including different operating systems, applications or development platforms. On the other hand, with SaaS, only the

provided application can be used by the tenants, and with PaaS, only applications that run on the provided platform can be used. The servers may run a hypervisor, in which case they can run several different operating systems at the same time, and any application that runs on these operating systems. Storage as a Service Cloud storage is also known as Storage as a Service (SaaS).[19] Network as a Service Cloud networks are also known as Network as a Service (NaaS).[38]

[edit]Deployment

models

There are several cloud-computing deployment models, and these represent different types of exclusive and non-exclusive clouds provided to consumers or groups of consumers.[7]

[edit]Public

cloud

Public clouds are cloud systems that are made available to any member of a non-exclusive group, such as the general public, or all organisations in a specific industry. Because there are many consumers, these are multi-tenanted clouds. They are owned by cloud providers, and are off-premise for all consumers. The cloud is public only in the sense that, potentially, any person or organisation that requires the provided services can become a consumer, and a public cloud may not necessarily be of universal interest. For example, a SaaS public cloud might provide an accounting system that is useful only to certain types of small business.

[edit]Private

cloud

Private clouds are cloud systems that are accessible only by a single consumer, or by an exclusive group, such as all the business units in a single organisation. They are generally single-tenanted, but they can be multi-tenanted if the individual group members act as separate consumers. They may be owned by a cloud provider and be located off-premise, or they may be operated by the consumer and be located on-premise. In the latter case, they can also be known as internal clouds or corporate clouds.[43] These clouds are usually private because of the need for system and data security, and, for this reason, they will usually be behind a firewall that restricts access to a limited set of client devices.[43] There are IT systems that have some of the same characteristics and advantages as cloud computing, but that are accessible only through a private LAN or WAN, rather than the Internet. These have been described as cloud computing-like,[13] but, because of the shared features, they are sometimes included as part of cloud computing itself.[7]

[edit]Virtual

private cloud cloud

When a service provider uses a public-cloud system to create a private cloud, the result is known as a virtual private cloud.[13]

[edit]Community

Community clouds are cloud systems that are available only to a specific group of related entities that share a common purpose, such as mission, security requirements, policy or compliance considerations, and that therefore need the same type of hosting. These are multi-tenanted clouds that may be managed by the community or by a third party, and they may be offpremise for all the consumers, or on-premise for one of the consumers. Unlike a private cloud, the community of consumers isn't narrowly exclusive. However, they are not truly public clouds, because entities outside the community that could benefit from the service, may not be able to become consumers.

[edit]Hybrid

cloud

A hybrid cloud is a composition of two or more public, private and community clouds,[7] that are used on a day-to-day basis or for cloud bursting.[13] Becoming part of such a cloud can be attractive to the providers, because it results in a larger pool of resources that can be made available to their consumers, so that variations in demand can be managed more flexibly. Also, for consumers, it may be that some of their data must be in a private cloud, for security and privacy reasons, but it may be more economical to keep some other, perhaps less sensitive, data in a public cloud, because the cost of these is generally lower. [5] A hybrid cloud is also a cloud of clouds, but the difference with the latter is that it can contain only one type of cloud deployment, rather than a mixture of public and private clouds, as with a hybrid.[5][13]

[edit]Vertical

cloud

A vertical cloud is a public cloud optimised for a specific, vertical industry.[44]

[edit]Consumption

model

There are several features of cloud computing that affect consumers in terms of their day-to-day use of the services, or the way they contract for the services, or their reasons for choosing one service over another, and these have been called the consumption model.[12] Some of them have been described as essential,[7] but it has also been observed that no single feature is proposed by all definitions,[45] and they have been discussed using terms such as alternatives, options, generally, recurrent ideas or typically, to indicate that they dont necessarily apply to all cloud services.[1][5][7][11][12][45]

[edit]Payment
Free services

and pricing

There are cloud services that are entirely free, and some that are offered on a freemium basis.[14][15][16] Commercial services Where payment is made, typically it is on the basis of consumption in a given time period, such as per concurrent user per month for SaaS, or per unit of storage per month for IaaS.[5][7][25][45] Charging by usage can be by any of the following methods:[1][5]

Utility: Consumers pay only for what they use - so called because it is similar to the pricing of services from electricity utilities.

Subscription: Consumers pay for a fixed amount of resource whether they use it or not, which is similar to some contracts for cable TV or mobile telecommunications.

A combination of these, where consumers pay a subscription to consume up to a certain amount, and then as a utility for resources consumed above that amount.

Ownership In some cases, cloud systems can be wholly owned by the consumer.[1][11]

[edit]Measured

service

Payment on the basis of consumption requires a measured service and a metering capability, but even free services may need to be metered if they apply only up to some level of resource.

[edit]Resource

pooling

Multi-tenant hosting involves pooled resources that are shared among the several tenants. This can be a consumer advantage, because sharing the resources may lead to lower costs for each tenant. However, resource pooling doesn't apply to a private cloud with only one tenant, because this type of resource sharing applies only between different tenants, rather than among a tenant's individual users. Sharing resources among users applies to any server or datacentre, whether it is part of cloud computing or not.

[edit]Scaling

and provisioning

Scaling means reconfiguring resources to change their size. Scaling in means to release resources, and scaling out means to acquire more resources. Systems that can easily scale in or out are said to be elastic. Provisioning refers to the mechanisms used to provide and release resources, and hence to manage scaling.[7][9] Agile provisioning allows the size of resources to be changed very easily, for example without the lengthy decision-making and budgetary process required when purchasing IT equipment for delivery on-premise. Elastic resources and agile provisioning are important for flexible and cost-effective management of variations in user demand. The following terms are used to describe the various scaling and provisioning features that are available with some cloud services:[7][9][12][45]

On-demand self service: Scaling that can be performed by the consumer, rather than by the host. Dynamic scaling: Scaling that can be done via software, so that it can happen automatically, and possibly in a way that is invisible to the consumer.

Infinite scaling: There is no effective limit to the amount of resource that the consumer can have, although it is always actually finite at any one time.

Rapid provisioning: Provisioning that can be immediate, rather than waiting for the cloud provider to respond to a request for resources.

There is some disagreement as to whether agile provisioning is a defining characteristic of cloud computing.[45] This is partly because the history of IT shows that flexible scaling and provisioning was available prior to the cloud era, and so it is more a feature of IT in general, rather than just cloud systems in particular. However, because large public clouds can have very many

tenants, their datacentres can be much more massive than previously known, and so they can give the appearance of unlimited scalability.[7]

[edit]Access
Broad Access to cloud services is via the Internet, and this leads to the possibility of consumers having broad access, which means the ability to use the services from multiple types of cloud client, including desktop, portable and hand-held devices, or from many different locations.[1] To achieve access from many different clients, it is necessary for the websites to be made compatible with hand-held devices as well as PCs, for example because of the different screen sizes and the different mechanics of scrolling within large web pages. Access can be from any location where an Internet connection is available, either from a fixed PC, for example in an office or Internet caf, or from anywhere that mobile telephone access is available, for example using a USB modem attached to a notebook. However, a private cloud may only allow access from certain sources, for example if it is behind a firewall. Transparent In IT, something is transparent to users if they do not need to understand or be aware of it. For example, with cloud computing, consumers can have transparent access, which means that the users of a service need not be aware of who provides the service or where the host is located.[7] However, for legal and regulatory requirements regarding the security of data, and the laws that might apply to breaches of service levels, a consumer may need to have their hosting provided by a known organisation in a specific location.

[edit]

Examples

All cloud services have a dedicated-resource aspect, with consumer-controlled access to these resources by authorised users, via a secure-access method, such as a login ID. Also, the resources process data that is private to the consumer and their associates, which means that it is entered or created by them, although it may be accessible by others, including the general public. There are many organisations that supply cloud services, and there is a very wide range of such services. [1][9][28][36][46][47]

[edit]Application

software

A range of cloud applications is available, including common small-business applications, such as accounting, and medium-tolarge organisation line-of-business or mission-criticalapplications, such as CRM and ERP.[14][15][16][37][46] These applications are:

Part of Software as a Service, which is one of the cloud-computing service models. Located in a private cloud if the software is supplied to just one consumer, or in a public cloud if any person or organisation needing the software can become a consumer. These are two of the cloud-computing deployment models.

Hosted by an Application Service Provider (ASP).[48]

The authorised users of the hosted software include the consumer's staff, and possibly the staff of their associates, such as customers and suppliers. The private data includes confidential information entered by the users, such as financial-transaction amounts, but there could also be a publicly-accessible aspect, such as a shopping-cart feature that can be used by visitors to a retail organisation's website.

[edit]Third-party

application providers

ASPs may host software that they have developed themselves, or software developed by others.[36] Some market-leading software systems, such as SAP and Sharepoint, are available from third-party ASPs.[38]

[edit]Databases
Database as a Service (DbaaS) hosts cloud databases,[40] and virtually all major database platforms are available in the cloud,[47] including Amazon SimpleDB and Amazon Relational Database Service. The private data for these services consists of the records stored in the database. DbaaS is part of Software as a Service.[40]

[edit]Email
Email computing involves two aspects:

Composing, reading and organising emails. Sending and receiving them via the Internet.

The first of these can be done on a user-device, such as a PC, in which case it is not part of cloud computing, or it can be done at the website of an ISP, in which case it is part of cloud computing.[25][37] The second aspect is part of cloud computing in both cases. For PC-based email, composing and reading emails, and organising them in folders, is done with software running on a PC, and all of the permanent storage, such as for the inbox, sent and other folders, and address books, is allocated on the PC. This is not cloud computing, because the email software and storage are not accessed via the Internet, but directly on the PC, even though the send and receive software is hosted by an ISP. The latter software is part of cloud computing, and the private data for this computing consists of the received and sent emails stored, perhaps temporarily, by the ISP prior to being retrieved for reading on the PC, or sent via the Internet. For web-based email, or webmail, such as Gmail, the data is stored for the consumer in disk space allocated by the service provider, and emails are composed, read and organised using software hosted by the provider at their site. The private data for this computing includes all emails, folders and address books. Webmail is part of Software as a Service. In both cases, a PC, or other user device, is a cloud client used to access the services.

[edit]Office-productivity

software

Office-productivity software, such as Google Docs, is available as a cloud service.[15][49] The private data for this software consists of the user's created artefacts, such as word-processor documents and spreadsheet models, which are stored and managed on the provider's infrastructure. This is part of Software as a Service.

[edit]Software

production
environments

[edit]Development

There are cloud services, such as the Azure Services Platform, that provide software-development environments. These are part of Platform as a Service, which is one of the cloud-computing service models.[18] The private data for these services consists of all development information, which would be accessible only by the consumers and their authorised users, including any third-party developers.

[edit]Customer

support

There are cloud services, such as Get Satisfaction, that provide self-help and developer support for the customers of a software company. This support is obtained and entered at a website that hosts and sells the companys products. This is a service for the software company, and the private data includes the domain names of the websites for which support is required.

[edit]Storage

services

Disk storage space can be rented from some cloud providers, and consumers of these services can upload software or data, for example by using the service for backup of client-device information.[14][15][16][19][46] The private data would consist of the uploaded material. The infrastructure is:

Known as Storage as a Service, and it is part of Infrastructure as a Service, which is one of the cloud-computing service models.

Hosted by a Storage Service Provider.[19]

[edit]Co-operation

and communication

There are cloud services that use the remote connectivity features of the Internet to support distributed co-operative activities, such as systems support, project work or voice and video communication. Examples of such services include:

Screen-sharing systems, such as LogMeIn and Mikogo, that can be used for remote support or co-operation on projects among geographically distributed participants.[15]

Teleconferencing systems, such as Skype.[1][16]

For these systems, client software needs to be installed on a user device, and this isn't part of cloud computing, but there is also central storage of a user's identity, so that they can connect with others. This storage and the associated connectivity software are part of cloud computing. The private data for this service includes the consumers identity.

[edit]Websites [edit]Creation

and hosting

There are cloud services that provide website creation and hosting.[16][46] The private data for the consumers of these services includes the websites content, and the dedicated resources would include a CMS, so that they can manage the website, and possibly a CRM, so that they can manage customers and purchases.

[edit]Feedback
There are cloud services for website operators, that allow visitors to a website to provide feedback to these operators, and that allow the operators to analyse this feedback.[15] The private data includes the consumers domain names for which feedback is required.

[edit]Visitor

statistics

There are cloud services, such as Google Analytics, that provide website visitor statistics to the operators, and that provide analysis of these statistics.[16] These are consumed by website operators, and the private data includes the consumers domain names for which statistics are required.

[edit]Payment
There are cloud services, such as PayPal, that allow website visitors to pay for anything purchased at the site. These are consumed by website operators, and the private data includes information on the consumers connected bank accounts, so that transfers of accumulated payment amounts can be made.

[edit]Personal [edit]Cloud

examples

storage

Anyone with Internet access can rent cloud storage and upload their personal data, for backup or sharing purposes.[14][15][16] This is known as a personal cloud,[50] and it is part of Infrastructure as a Service. For example, with photos in the cloud, a family can share them with members and friends that are in distributed locations, in a way that couldnt happen with data on their PCs. The private data consists of the uploaded information, and the authorised users consist of all those given access to this information. Potentially, this type of service could have the largest group of tenants across all providers, because any member of the general public with a device that can access the Internet can become a consumer, if only to backup data.

[edit]Internet

TV

Internet TV, also known as cloud TV, is a cloud service.[51] The private data for the consumers of these services includes their multicast address.

[edit]Online

banking

Online banking is an example of SaaS for the banks customers, and the private data for each consumer includes their bank account transaction information.[52] Besides desktop and portable computers, the cloud clients used to access this service include ATMs, online or mobile wallets, and point-of-sale terminals.

[edit]Social

media and networking

Media and networking sites, such as Facebook and LinkedIn, are part of cloud computing.[15] The private data for the consumers includes uploaded information, and this is accessible by the authorised network consisting of their friends or colleagues.

[edit]Synced

data

Different client devices owned by the same consumer can have their data synchronised, or synced, via the cloud, so that each device can access the data produced by all the other devices. This is done by automatically backing up the data of each client using cloud infrastructure. One example of this for personal use is the iCloud,[53] which provides cloud storage for an individual's music downloads from the iTunes Store in such a way that they can be accessed from any of their client devices. In this case, the private data consists of the tunes that are automatically gathered for the consumer onto their cloud storage, regardless of how they are purchased.

[edit]Online

retailing

There are cloud services, such as eBay, that allow individuals to sell items on the Internet. The private data for these services includes details of the consumers sale items.

[edit]Blogging
There are cloud services, such as WordPress, that enable individuals to create and maintain a weblog. The consumers of these services control access by allowing only themselves to contribute blog topics and to respond to visitor comments, or by authorising others to do so. The private data includes the:

Topics that are entered from time to time. Comments entered by blog visitors, which can be published or suppressed by the consumer. Responses of the consumer. Details of who can read or contribute to the blog, which can be the general public, or an exclusive group.

[edit]Peer-to-peer

file sharing

Cloud computing involves using a network of remote servers hosted on the Internet.[4] These servers can be kept in a datacentre operated by a single cloud provider, but they can also be part of a distributed P2P network that shares resources via

the Internet.[1][54] In such a network, all participating systems are peers, which means that they are both clients and servers, and so their users are both service consumers and service providers. For example, P2P file-sharing is part of cloud computing. At any one time, the group participating in this service consists of the users of all devices with the same file-sharingsoftware, such as BitTorrent,[1] that are on-line at any one time. For these participants, the service is the mutual sharing of files, and this sharing is:

Consumed by each participant by uploading from another participant, or downloading to another participant. Provided by each participant by making available some of the files on their own device, for downloading or uploading.

For the participants, as:

Consumers, the:

Private data consists of the files on their own device that they allow to be shared. Dedicated resources include their file-sharing software, which is used for the uploading and downloading of files, and to identify them as part of the network.

Controlled access consists of allowing the use of their client device for uploading to, or downloading from, the other participants.

Providers, they host on their own behalf.

[edit]Collaborative

distributed computing

The Internet services that control collaborative, distributed computing, such as GIMPS and SETI@home, are part of cloud computing.[1] This is also known as volunteer computing. These services divide up the computation into small parts that are then distributed to the participating user devices over the Internet. After carrying out its part of the task, a device sends the results back to the cloudbased control as a contribution to the whole process. The consumers of these services are the participants whose user devices carry out parts of the computation. The private data for each consumer consists of their registration information, including the Internet address of their device.

[edit]Deployment-model

examples

There are several cloud-computing deployment models that provide public, private, community or hybrid clouds, and there are many examples of these.[55] Public clouds are the most ubiquitous,[55] and they include:

Personal clouds, which are storage services that can be consumed by anyone with Internet access.[50] Many application-software services. Other software services, including databases, email and office-productivity software. Platform services.[55]

Private clouds can provide similar types of software, platform and infrastructure services as public clouds, except that they are hosted for one consumer behind a firewall that restricts access to a limited set of client devices. They can be on or off-premise for the consumer.[55] Google Apps is available in a community cloud for Government agencies,[55] and there is a vertical cloud for health-care.[44]

[edit]Service-model

examples

Cloud computing includes SaaS, PaaS and IaaS, and there are many examples of these.[56] SaaS constitutes the largest group of services,[36] and the following are some specific examples:

Cloud applications[15][16] Cloud databases[17][40] Email[25][37] Office-productivity software[15][49] Cloud desktops.[39]

PaaS comprises all software-development and run-time platforms that are available as cloud services.[18][55] IaaS examples include:

Personal clouds[50] Other storage services[19][46] Cloud networks.[38]

[edit]

Exclusions

Cloud computing isnt just the same as Internet computing, and the Intercloud doesnt include all the websites on the Internet.[57] For example, the following are excluded from cloud computing:

Publicly accessible websites that process the same data for every visitor, such as web search engines. There is no privatedata aspect for these sites.

All web pages that provide a calculation feature, but without managing private data, such as a financial institutions loanrepayment calculator.

All sites that only provide information, rather than a computation facility.

[edit]

Advantages
costs

There are many possible advantages of cloud computing, but they may not apply to all consumers. [57][58]

[edit]Reduced

Cloud services paid for on a usage basis can be financially advantageous for a consumer when compared to the outright purchase, or long-term rental, of what would be a big-budget item.[1][5][8][19][45]

Also, there are reduced operating costs, because a cloud consumer does not need to house, staff and maintain their own equipment.

[edit]Up-to-date

software

SaaS consumers can always have the most up-to-date software, because versioning is controlled centrally by the cloud provider, and when they make a new release it is automatically available to every user. This is particularly advantageous for cloud desktops, because deployment of new software versions can be very costly and time consuming for a large organisation with many PCs, and because it can therefore be difficult to ensure that everyone has the same version of the organisation's PC software applications at any one time.

[edit]Improved

access

Cloud computing involves using the Internet, and this can provide access from multiple locations and many different types of user device.

[edit]Sharing

and co-operation

Cloud services are advantageous, when compared to PCs and local servers, for activities that require co-operation among distributed groups.

[edit]Flexible

and infinite scaling

Flexible and infinite scaling can be an advantageous feature of cloud-computing services, for example to allow for a sudden increase in demand by the users. This has traditionally been a difficulty for fully owned and self-managed IT resources, where there can be, for example, one server with a given, fixed size, and where some of its capacity may be wasted when demand is low, but where it may be overloaded, resulting in slow response times, when demand is high. [59]

[edit]Simpler

capacity planning

Cloud computing moves the IT capacity-planning role from the consumer to the cloud provider, and they can be in a better position to optimise the cloud resources used by their consumers than the consumers themselves would be for their own resources.[59] For example, the provider may be able to supply better demand smoothing, because they can perform capacity planning over a much larger pool of resources, and for a large group of consumers, whose peak loads will probably not occur all at the same time.

[edit]

Risks
and security

Besides the advantages of cloud computing, there are also risks, at least for some consumers. [57][58]

[edit]Privacy

Because data is stored on a cloud provider's systems, and possibly in a location that may not be known by the consumer, there can be data-privacy and security issues.

Concerns over lack of privacy arise because providers control the data, and so consumers could perceive a risk that they may:[60]

Mine the data for their own use. Share it with other organisations. Lock the consumer out, for example if there is a commercial dispute. Lock the consumer in, so that they cant migrate to a different provider. Lose data, particularly if their backup practices are not adequate to cope with emergencies.

[edit]Regulatory

and customer requirements

There are some issues that may prevent the use of cloud services. For example:

Some organisations are required by regulations and laws to be responsible for the security and confidentiality of their customer's data.

SLAs with customers and other associates may place restrictions on an organisation's IT resource-management options.

Such issues may prevent organisations from using:

Third-party hosting Hosting in any given location A public cloud, however hosted.

[edit]Service-provider

outages

Any accidental downtime, or outage, of cloud systems can affect some or all of the providers tenants, and so this can deprive many users of access to their IT systems. This is particularly true of large public clouds. [61][62]

[edit]

History
concept

[edit]Origins [edit]The

Telecom networks have been known as the cloud since at least the 1990s,[63][64] and this was a symbolic metaphor used to represent the unseen network that delivered services invisibly. The term was also applied to large ATM networks in the early 1990s.[1] Cloud computing can be seen as a movement to apply the telecom cloud concept to IT. [63]

[edit]Cloud

symbols

Cloud symbols were used to represent the public telephone system on diagrams. Since this was the original basis of the Internet, through the use of dial-up modems, the cloud symbol was also adopted for the Internet, and it came into common use for this purpose in the 1990s.[65]

[edit]New

paradigm

Cloud computing has been a paradigm shift in IT acquisition and management, from outright purchase as a product, to consumption as a service.[1][66] This has involved a change from dealing with technical capacity and performance specifications when choosing a supplier and a model number that can cope with projected user demand, to dealing only with economic considerations when choosing a service.[59][66] This is because visitors to an Internet website need only be concerned with the cost of using the available services, rather than with the IT infrastructure that supports the site. The technical details of this infrastructure can be left to the hosting organisation, and it is up to them to ensure that its performance and capacity specifications are adequate for the expected traffic. For these reasons, things are simpler for the users, as opposed to acquiring, sizing, housing, staffing and maintaining IT equipment for themselves.[1][59] The transition from ownership to cloud computing didn't happen in one step, and in the history of this change there were other business models, such as outsourcing, and some related technologies, such as utility computing. However, the major shift has been from the exclusive use of a whole resource, such as a server or entire datacentre, over an extended period of time, such as several years, to consumption of a third-party operated service that may provide access to only part of a shared resource possibly contracted for on a short-term basis, such as monthly.

[edit]First

uses of the term

The first uses of the term cloud computing were in the late 1990s, and in:

November 1996 it was coined by NetCentric, and applied as a marketing term.[64] May 1997 it was the subject of a trademark application (which was not approved).[64] October 1997 it was discussed in an academic conference, and described as a new paradigm where the boundaries of computing will be determined by economic rationale rather than technical limits.[66][67][68]

November 1997, the first newspaper article on the subject was published.[64]

[edit]Widespread

adoption

Whilst there were earlier services,[69] cloud computing started to gain widespread use from 2007.[1] Google Docs was launched in 2006, and it went mainstream in 2007.[63] Also in 2007, Amazon, IBM and Microsoft started calling their Internet-based offerings cloud computing.[64] Google Trends shows cloud computing taking off as a search term in 2007, and as a news item in 2008.[65][70]

[edit]Precursor

technologies

There are many technologies that were in use before cloud computing, and that are either essential for its implementation, or that have some of the same characteristics.[45]

[edit]Virtualisation
In IT, anything that is virtual does not exist as such, but is made to appear to exist through the use of software. [71] Of course, this software runs on real computers that do actually exist, but the use of virtualisation techniques can make a relatively small computer appear to have a very large capacity, so that it can be shared by many concurrent activities. It has been available since the 1960s, when multi-user computers needed to provide a virtual memory to each process, so that they could share a relatively small real memory. Full virtualization of complete servers has been in use since the late 1960s.

Cloud computing uses virtualisation to implement independent virtual servers, with their own storage and software.[38] For example, one of these, or even a network of them,[38] can be made available to each of the many tenants of a public cloud, using a much smaller collection of real servers, or possibly only one server. This sharing of one server, or a small number, among very many virtual servers that each support their own tenants is one reason that cloud computing is advantageous, because there are economies of scale. It also enables flexible scaling and agile provisioning, since another virtual server can be made available instantly, because it can be done automatically, without necessarily purchasing any more equipment.

[edit]Timesharing
Timesharing, which originated in the 1960s, and which became a prominent computing model in the 1970s, involved sharing the resources of a mainframe computer among many concurrent users. In the 1960s and 1970s, companies began to operate service bureaus that provided timesharing access for a fee.[1]

[edit]Client-server

computing

The client-server model of computing, which originated in the 1970s, is a type of distributed computing that separates out the:

Access points, called clients, which are used by only one person at a time, and which are therefore not shared. Central servers, which supply applications and data, and which are shared among several clients that can access them at any one time.

All cloud-computing service-model examples are a development of client-server computing, and cloud datacentres contain one or more servers that are accessed via separate cloud clients. This is in contrast to P2P networks, in which all participating devices are both clients and servers, and there are some examples of these that are also part of cloud computing.

[edit]Utility

computing

One typical characteristic of cloud computing is consumption as a utility, with payment only for what is used. This is similar to utility computing, which was available from the 1980s. Originally, utility computing was not necessarily Internet accessible, and it may have involved very centralised, on-premise resources. However, later it was combined with the client-server model and then networks, and became more distributed. Later still, when combined with the Internet, it evolved into cloud computing. The computer pioneer John McCarthy predicted in 1961 that computing would one day be delivered as a public utility.[58]

[edit]Cluster

computing

Cluster computing, which originated in the 1960s, is the use of a network of servers that are co-ordinated to achieve a common goal. It includes grid computing,[1] which originated in the 1990s, and server farms. For example, a large organisation may provide its email service using a server farm consisting of several computers each of which deals with email addresses beginning with a few letters of the alphabet, such as one for all addresses beginning with a, b or c, and another for addresses beginning with d, e or f, and so on through the alphabet. The use of multiple servers has advantages over an equivalently powerful single computer:

Fault tolerance: If there is an outage of one server, it may only lead to a partial degradation of service for some users, as opposed to an outage of one much larger computer, which could lead to a total degradation for all users.

Redundancy: Extra, standby servers can be included for failover in exceptional circumstances. Load balancing: Further servers can be added at any time to cope with increased demand, without disturbing the other servers.

Cost: Purchasing many midrange computers can be more cost-effective than purchasing one large mainframe.

For these reasons, cloud datacentres can contain a cluster of servers, and each one of these may be able to support many virtual servers so as to allow for flexible scaling and easy provisioning.

[edit]Autonomic

computing

Autonomic computing, which originated in 2001, is computing carried out by self-managed systems that can autonomously and automatically react to changing circumstances. For example, they can be self-repairing when there are outages, or they can be self-adjusting in reaction to changing demand from users. Autonomic computing techniques are used to implement cloud computing because it is advantageous for resources to selfadjust in some circumstances. For example, cloud bursting is an application of this type of computing.

[edit]Long-term [edit]Computer

trends

access

Since the adoption of computers during the 1950s, users have become more-and-more physically removed from their IT resources, and cloud computing is a further step in this trend. Originally, users were required to visit a special room one at a time to use the computer, and one motivation for changing this situation was to enable more people to have concurrent use of computer resources. This began with the advent of batch operating systems. With these systems, users would take their data on punched cards to the computer room, where they would be fed into the computer by a specialist computer operator, for a batch of different users all at the same time. The users would not be able to access the computer directly themselves. This was followed by multi-user operating systems, which were accessed via directly connected terminals not necessarily in the computer room, and then networks, where access to the computer would be via intermediate switching devices so that the users and the computers could be in separate places, including in different buildings. The Internet, short for inter-networks, developed out of these networks to enable users to be in one place, and their IT resources to be in any other place in the world. Also, users could access their resources from any location with Internet access, not just a computer terminal in their office.

[edit]IT

acquisition and management

There has been a long-term trend in IT acquisition and management away from outright purchase and self hosting of IT equipment, and cloud computing is part of this trend. A major step before cloud computing was outsourcing, and the use of vendor hosting or third-party hosting, rather than self hosting. Originally, the equipment would be on the user's premises, but with networks, the hosting could be in a different location, and then with the Internet there was even greater flexibility as to where resources could be hosted.

[edit]Resource

sharing

Originally, any increase in the size of IT resources required the purchase, delivery and installation of extra hardware, which could involve a long delay. Because of this delay, resources were sometimes sized so as to cope with spikes, which meant purchasing a larger than normally required system, and so, since spikes may not occur frequently, if at all, the resources were very often under-utilised, and this was financially wasteful.[59] For this reason, there has been a trend in IT away from a static, fixed size of infrastructure to systems that can be shared and that can scale to cater for changing circumstances, such as extra users, more flexibly. Cloud computing is a further step in this trend. One of the first developments was the use of virtualisation, and the advantage of this technology is the ability to provision new virtual servers easily, without purchasing new equipment. This allows new users to share the resources. Other developments included:

Pooling all of a large organisations IT resources in a datacentre, rather than housing them in different departments. This made resource sharing easier.

Utility computing, where users have access only to part of a shared resource, and where the size of their share can be easily changed.

[edit]

Cloud computing
From Wikipedia, the free encyclopedia

It has been suggested that Introduction to cloud computing be merged into this article or section. (Discuss) Proposed since March 2012. It has been suggested that Cloud computing security be merged into this article or section. (Discuss) Proposed since December 2011.

Cloud computing logical diagram


Cloud computing refers to the delivery of computing and storage capacity[citation needed] as a service to a heterogeneous community of end-recipients. The name comes from the use of clouds as an abstraction for the complex infrastructure it contains in system diagrams[citation needed]. Cloud computing entrusts services with a user's data, software and computation over a network. It has considerable overlap withsoftware as a service (SaaS). End users access cloud based applications through a web browser or a light weight desktop or mobile app while the business software and data are stored on servers at a remote location. Proponents claim that cloud computing allows enterprises to get their applications up and running faster, with improved manageability and less maintenance, and enables IT to more rapidly adjust resources to meet fluctuating and unpredictable business demand.[1][2] Cloud computing relies on sharing of resources to achieve coherence and economies of scale similar to autility (like the electricity grid) over a network (typically the Internet).[3] At the foundation of cloud computing is the broader concept of converged infrastructure and shared services.[4]

[edit]History
The term cloud is used as a metaphor for the Internet, based on the cloud drawing used in the past to represent the telephone network,[5] and later to depict the Internet in computer network diagrams as an abstraction of the underlying infrastructure it represents.[6] In the 1990s, telecommunications companies who previously offered primarily dedicated point-to-point data circuits, began offering virtual private network (VPN) services with comparable quality of service but at a much lower cost. By switching traffic to balance utilisation as they saw fit, they were able to utilise their overall network bandwidth more effectively. The cloud symbol was used to denote the demarcation point between that which was the responsibility of the provider and that

which was the responsibility of the user. Cloud computing extends this boundary to cover servers as well as the network infrastructure.[7] The underlying concept of cloud computing dates back to the 1960s, when John McCarthy opined that "computation may someday be organised as a public utility." Almost all the modern-day characteristics of cloud computing (elastic provision, provided as a utility, online, illusion of infinite supply), the comparison to the electricity industry and the use of public, private, government, and community forms, were thoroughly explored in Douglas Parkhill's 1966 book, The Challenge of the Computer Utility. Other scholars have shown that cloud computing's roots go all the way back to the 1950s when scientist Herb Grosch (the author of Grosch's law) postulated that the entire world would operate on dumb terminals powered by about 15 large data centers.[8] An early but surprisingly complete implementation of cloud computing was implemented and patented (in Germany and England) by Hardy Schloer (which he termed the "one-page web") [9] with multiple user applications, multiple identification providers, cloud storage, back-end servers with plug-in applications, a multiple tiered server architecture able to handle different user devices over the internet, and built-in security features. The ubiquitous availability of high capacity networks, low cost computers and storage devices as well as the widespread adoption of hardware virtualization, service-oriented architecture, autonomic, and utility computing have led to a tremendous growth in cloud computing.[10][11][12] After the dot-com bubble, Amazon played a key role in the development of cloud computing by modernising their data centers, which, like most computer networks, were using as little as 10% of their capacity at any one time, just to leave room for occasional spikes. Having found that the new cloud architecture resulted in significant internal efficiency improvements whereby small, fast-moving "two-pizza teams" could add new features faster and more easily, Amazon initiated a new product development effort to provide cloud computing to external customers, and launched Amazon Web Service (AWS) on a utility computing basis in 2006.[13][14] In early 2008, Eucalyptus became the first open-source, AWS API-compatible platform for deploying private clouds. In early 2008, OpenNebula, enhanced in the RESERVOIR European Commission-funded project, became the first open-source software for deploying private and hybrid clouds, and for the federation of clouds.[15] In the same year, efforts were focused on providing quality of service guarantees (as required by real-time interactive applications) to cloud-based infrastructures, in the framework of the IRMOS European Commission-funded project, resulting to a real-time cloud environment.[16] By mid-2008, Gartner saw an opportunity for cloud computing "to shape the relationship among consumers of IT services, those who use IT services and those who sell them"[17] and observed that "[o]rganisations are switching from company-owned hardware and software assets to per-use service-based models" so that the "projected shift to cloud computing... will result in dramatic growth in IT products in some areas and significant reductions in other areas."[18]

[edit]Similar

systems and concepts

Cloud computing shares characteristics with:

Autonomic computing Computer systems capable of self-management.[19] Clientserver model Clientserver computing refers broadly to any distributed application that distinguishes between service providers (servers) and service requesters (clients).[20]

Grid computing "A form of distributed and parallel computing, whereby a 'super and virtual computer' is composed of a cluster of networked, loosely coupled computers acting in concert to perform very large tasks."

Mainframe computer Powerful computers used mainly by large organizations for critical applications, typically bulk data processing such as census, industry and consumer statistics, police and secret intelligence services, enterprise resource planning, and financial transaction processing.[21]

Utility computing The "packaging of computing resources, such as computation and storage, as a metered service similar to a traditional public utility, such as electricity."[22][23]

Peer-to-peer Distributed architecture without the need for central coordination, with participants being at the same time both suppliers and consumers of resources (in contrast to the traditional clientserver model).

[edit]Characteristics
Cloud computing exhibits the following key characteristics:

Agility improves with users' ability to re-provision technological infrastructure resources. Application programming interface (API) accessibility to software that enables machines to interact with cloud software in the same way the user interface facilitates interaction between humans and computers. Cloud computing systems typically use REST-based APIs.

Cost is claimed to be reduced and in a public cloud delivery model capital expenditure is converted to operational expenditure.[24] This is purported to lower barriers to entry, as infrastructure is typically provided by a third-party and does not need to be purchased for one-time or infrequent intensive computing tasks. Pricing on a utility computing basis is finegrained with usage-based options and fewer IT skills are required for implementation (in-house).[25] The e-FISCAL project's state of the art repository[26] contains several articles looking into cost aspects in more detail, most of them concluding that costs savings depend on the type of activities supported and the type of infrastructure available in-house.

Device and location independence[27] enable users to access systems using a web browser regardless of their location or what device they are using (e.g., PC, mobile phone). As infrastructure is off-site (typically provided by a third-party) and accessed via the Internet, users can connect from anywhere.[25]

Virtualization technology allows servers and storage devices to be shared and utilization be increased. Applications can be easily migrated from one physical server to another.

Multitenancy enables sharing of resources and costs across a large pool of users thus allowing for:

Centralization of infrastructure in locations with lower costs (such as real estate, electricity, etc.) Peak-load capacity increases (users need not engineer for highest possible load-levels) Utilisation and efficiency improvements for systems that are often only 1020% utilised.[13]

Reliability is improved if multiple redundant sites are used, which makes well-designed cloud computing suitable for business continuity and disaster recovery.[28]

Scalability and Elasticity via dynamic ("on-demand") provisioning of resources on a fine-grained, self-service basis near real-time, without users having to engineer for peak loads.[29][30]

Performance is monitored, and consistent and loosely coupled architectures are constructed using web services as the system interface.[25]

Security could improve due to centralization of data, increased security-focused resources, etc., but concerns can persist about loss of control over certain sensitive data, and the lack of security for stored kernels. [31] Security is often as good as or better than other traditional systems, in part because providers are able to devote resources to solving security issues that many customers cannot afford.[32] However, the complexity of security is greatly increased when data is distributed over a wider area or greater number of devices and in multi-tenant systems that are being shared by unrelated users. In addition, user access to security audit logs may be difficult or impossible. Private cloud installations are in part motivated by users' desire to retain control over the infrastructure and avoid losing control of information security.

Maintenance of cloud computing applications is easier, because they do not need to be installed on each user's computer and can be accessed from different places.

[edit]Service

Models

Cloud computing providers offer their services according to three fundamental models: [3][33] Infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS) where IaaS is the most basic and each higher model abstracts from the details of the lower models.

[edit]Infrastructure

as a service (IaaS)

See also: Category:Cloud infrastructure In this most basic cloud service model, cloud providers offer computers as physical or more often as virtual machines, raw (block) storage, firewalls , load balancers, and networks. IaaS providers supply these resources on demand from their large pools installed in data centers. Local area networks including IP addresses are part of the offer. For the wide area connectivity, the Internet can be used or - in carrier clouds - dedicated virtual private networks can be configured. To deploy their applications, cloud users then install operating system images on the machines as well as their application software. In this model, it is the cloud user who is responsible for patching and maintaining the operating systems and application software. Cloud providers typically bill IaaS services on a utility computing basis, that is, cost will reflect the amount of resources allocated and consumed.

[edit]Platform

as a service (PaaS)

Main article: Platform as a service See also: Category:Cloud platforms In the PaaS model, cloud providers deliver a computing platform and/or solution stack typically including operating system, programming language execution environment, database, and web server. Application developers can develop and run their software solutions on a cloud platform without the cost and complexity of buying and managing the underlying hardware and software layers. With some PaaS offers, the underlying compute and storage resources scale automatically to match application demand such that the cloud user does not have to allocate resources manually.

[edit]Software

as a service (SaaS)

Main article: Software as a service In this model, cloud providers install and operate application software in the cloud and cloud users access the software from cloud clients. The cloud users do not manage the cloud infrastructure and platform on which the application is running. This eliminates the need to install and run the application on the cloud user's own computers simplifying maintenance and support. What makes a cloud application different from other applications is its elasticity. This can be achieved by cloning tasks onto multiple virtual machines at run-time to meet the changing work demand. Load balancers distribute the work over the set of virtual machines. This process is transparent to the cloud user who sees only a single access point. To accommodate a large number of cloud users, cloud applications can be multitenant, that is, any machine serves more than one cloud user organization. It is common to refer to special types of cloud based application software with a similar naming convention: desktop as a service, business process as a service, Test Environment as a Service,communication as a service. The pricing model for SaaS applications is typically a monthly or yearly flat fee per user.[34]

[edit]Cloud

clients

See also: Category:Cloud clients Users access cloud computing using networked client devices, such as desktop computers, laptops, tablets and smartphones. Some of these devices - cloud clients - rely on cloud computing for all or a majority of their applications so as to be essentially useless without it. Examples are thin clients and the browser-based Chromebook. Many cloud applications do not require specific software on the client and instead use a web browser to interact with the cloud application. With Ajax and HTML5 these Web user interfaces can achieve a similar or even better look and feel as native applications. Some cloud applications, however, support specific client software dedicated to these applications (e.g., virtual desktop clients and most email clients). Some legacy applications (line of business applications that until now have been prevalent in thin client Windows computing) are delivered via a screen-sharing technology.

[edit]Deployment

models

Cloud computing types

[edit]Public

cloud

Public cloud applications, storage, and other resources are made available to the general public by a service provider. These services are free or offered on a pay-per-use model. Generally, public cloud service providers like Microsoft and Google own and operate the infrastructure and offer access only via Internet (direct connectivity is not offered). [25]

[edit]Community

cloud

Community cloud shares infrastructure between several organizations from a specific community with common concerns (security, compliance, jurisdiction, etc.), whether managed internally or by a third-party and hosted internally or externally. The costs are spread over fewer users than a public cloud (but more than a private cloud), so only some of the cost savings potential of cloud computing are realized.[3]

[edit]Hybrid

cloud

Hybrid cloud is a composition of two or more clouds (private, community or public) that remain unique entities but are bound together, offering the benefits of multiple deployment models.[3] By utilizing "hybrid cloud" architecture, companies and individuals are able to obtain degrees of fault tolerance combined with locally immediate usability without dependency on internet connectivity. Hybrid Cloud architecture requires both on-premises resources and off-site (remote) server based cloud infrastructure. Hybrid clouds lack the flexibility, security and certainty of in-house applications.[35] Hybrid cloud provides the flexibility of in house applications with the fault tolerance and scalability of cloud based services.

[edit]Private

cloud

Private cloud is cloud infrastructure operated solely for a single organization, whether managed internally or by a third-party and hosted internally or externally.[3] They have attracted criticism because users "still have to buy, build, and manage them" and thus do not benefit from less handson management,[36] essentially "[lacking] the economic model that makes cloud computing such an intriguing concept". [37][38]

[edit]Architecture

Cloud computing sample architecture


Cloud architecture,[39] the systems architecture of the software systems involved in the delivery of cloud computing, typically involves multiple cloud components communicating with each other over a loose coupling mechanism such as a messaging queue. Elastic provision implies intelligence in the use of tight or loose coupling as applied to mechanisms such as these and others.

[edit]The

Intercloud

Main article: Intercloud The Intercloud[40] is an interconnected global "cloud of clouds"[41][42] and an extension of the Internet "network of networks" on which it is based.[43][44][45]

[edit]Cloud

engineering

Cloud engineering is the application of engineering disciplines to cloud computing. It brings a systematic approach to the high level concerns of commercialisation, standardisation, and governance in conceiving, developing, operating and maintaining cloud computing systems. It is a multidisciplinary method encompassing contributions from diverse areas such as systems, software, web, performance, information, security, platform, risk, and quality engineering.

[edit]Issues [edit]Privacy
The cloud model has been criticised by privacy advocates for the greater ease in which the companies hosting the cloud services control, thus, can monitor at will, lawfully or unlawfully, the communication and data stored between the user and the host company. Instances such as the secret NSA program, working with AT&T, and Verizon, which recorded over 10 million phone calls between American citizens, causes uncertainty among privacy advocates, and the greater powers it gives to telecommunication companies to monitor user activity.[46] Using a cloud service provider (CSP) can complicate privacy of data because of the extent to which virtualization for cloud processing (virtual machines) and cloud storage are used to implement cloud service.[47] The point is that CSP operations, customer or tenant data may not remain on the same system, or in the same data center or even within the same provider's cloud. This can lead to legal concerns over jurisdiction. While there have been efforts (such as US-EU Safe Harbor) to "harmonise" the legal environment, providers such as Amazon still cater to major markets (typically the United States and the European Union) by deploying local infrastructure and allowing customers to select

"availability zones."[48] Cloud computing poses privacy concerns because the service provider at any point in time, may access the data that is on the cloud. They could accidentally or deliberately alter or even delete some info.[49]

[edit]Compliance
In order to obtain compliance with regulations including FISMA, HIPAA, and SOX in the United States, the Data Protection Directive in the EU and the credit card industry's PCI DSS, users may have to adopt community or hybrid deployment modes that are typically more expensive and may offer restricted benefits. This is how Google is able to "manage and meet additional government policy requirements beyond FISMA"[50][51] and Rackspace Cloud or QubeSpace are able to claim PCI compliance.[52] Many providers also obtain a SAS 70 Type II audit, but this has been criticised on the grounds that the hand-picked set of goals and standards determined by the auditor and the auditee are often not disclosed and can vary widely. [53] Providers typically make this information available on request, under non-disclosure agreement.[54][55] Customers in the EU contracting with cloud providers established outside the EU/EEA have to adhere to the EU regulations on export of personal data.[56] U.S. Federal Agencies have been directed by the Office of Management and Budget to use a process called FedRAMP (Federal Risk and Authorization Management Program) to assess and authorize cloud products and services. Federal CIO Steven VanRoekel issued a memorandum to federal agency Chief Information Officers on December 8, 2011 defining how federal agencies should use FedRAMP. FedRAMP consists of a subset of NIST Special Publication 800-53 security controls specifically selected to provide protection in cloud environments. A subset has been defined for the FIPS 199 low categorization and the FIPS 199 moderate categorization. The FedRAMP program has also established a Joint Acceditation Board (JAB) consisting of Chief Information Officers from DoD, DHS and GSA. The JAB is responsible for establishing accreditation standards for 3rd party organizations who will perform the assessments of cloud solutions. The JAB will also review authorization packages and may grant provisional authorization (to operate). The federal agency consuming the service will still have the final responsibility for final authority to operate. More information available from GSA athttp://www.gsa.gov/portal/category/102371.

[edit]Legal
As can be expected with any revolutionary change in the landscape of global computing, certain legal issues arise; everything from trademark infringement, security concerns to the sharing of propriety data resources.

[edit]Open

source

See also: Category:Free software for cloud computing Open-source software has provided the foundation for many cloud computing implementations, one prominent example being the Hadoop framework.[57] In November 2007, the Free Software Foundation released the Affero General Public License, a version of GPLv3 intended to close a perceived legal loophole associated with free software designed to be run over a network.[58]

[edit]Open

standards

See also: Category:Cloud standards

Most cloud providers expose APIs that are typically well-documented (often under a Creative Commons license[59]) but also unique to their implementation and thus not interoperable. Some vendors have adopted others' APIs and there are a number of open standards under development, with a view to delivering interoperability and portability.[60]

[edit]Security
Main article: Cloud computing security As cloud computing is achieving increased popularity, concerns are being voiced about the security issues introduced through adoption of this new model. The effectiveness and efficiency of traditional protection mechanisms are being reconsidered as the characteristics of this innovative deployment model can differ widely from those of traditional architectures.[61] An alternative perspective on the topic of cloud security is that this is but another, although quite broad, case of "applied security" and that similar security principles that apply in shared multi-user mainframe security models apply with cloud security.[62] The relative security of cloud computing services is a contentious issue that may be delaying its adoption. [63] Physical control of the Private Cloud equipment is more secure than having the equipment off site and under someone elses control. Physical control and the ability to visually inspect the data links and access ports is required in order to ensure data links are not compromised. Issues barring the adoption of cloud computing are due in large part to the private and public sectors' unease surrounding the external management of security-based services. It is the very nature of cloud computing-based services, private or public, that promote external management of provided services. This delivers great incentive to cloud computing service providers to prioritize building and maintaining strong management of secure services. [64] Security issues have been categorised into sensitive data access, data segregation, privacy, bug exploitation, recovery, accountability, malicious insiders, management console security, account control, and multi-tenancy issues. Solutions to various cloud security issues vary, from cryptography, particularly public key infrastructure (PKI), to use of multiple cloud providers, standardisation of APIs, and improving virtual machine support and legal support.[61][65][66] Cloud computing offers many benefits, but it also is vulnerable to threats. As the uses of cloud computing increase, it is highly likely that more criminals will try to find new ways to exploit vulnerabilities in the system. There are many underlying challenges and risks in cloud computing that increase the threat of data being compromised. To help mitigate the threat, cloud computing stakeholders should invest heavily in risk assessment to ensure that the system encrypts to protect data; establishes trusted foundation to secure the platform and infrastructure; and builds higher assurance into auditing to strengthen compliance. Security concerns must be addressed in order to establish trust in cloud computing technology.

[edit]Sustainability
Although cloud computing is often assumed to be a form of "green computing", there is no published study to substantiate this assumption.[67] Citing the servers affects the environmental effects of cloud computing. In areas where climate favors natural cooling and renewable electricity is readily available, the environmental effects will be more moderate. (The same holds true for "traditional" data centers.) Thus countries with favorable conditions, such as Finland, [68] Sweden and Switzerland,[69] are trying to attract cloud computing data centers. Energy efficiency in cloud computing can result from energy-aware scheduling and server consolidation.[70] However, in the case of distributed clouds over data centers with different source of energies including renewable source of energies, a small compromise on energy consumption reduction could result in high carbon footprint reduction.[71]

[edit]Abuse

As with privately purchased hardware, customers can purchase the services of cloud computing for nefarious purposes. This includes password cracking and launching attacks using the purchased services.[72] In 2009, a banking trojan illegally used the popular Amazon service as a command and control channel that issued software updates and malicious instructions to PCs that were infected by the malware.[73]

[edit]Research
Many universities, vendors and government organisations are investing in research around the topic of cloud computing:[74][75]

In October 2007, the Academic Cloud Computing Initiative (ACCI) was announced as a multi-university project designed to enhance students' technical knowledge to address the challenges of cloud computing. [76]

In April 2009, UC Santa Barbara released the first open source platform-as-a-service, AppScale, which is capable of running Google App Engine applications at scale on a multitude of infrastructures.

In April 2009, the St Andrews Cloud Computing Co-laboratory was launched, focusing on research in the important new area of cloud computing. Unique in the UK, StACC aims to become an international centre of excellence for research and teaching in cloud computing and will provide advice and information to businesses interested in using cloud-based services

In October 2010, the TClouds (Trustworthy Clouds) project was started, funded by the European Commission's 7th Framework Programme. The project's goal is to research and inspect the legal foundation and architectural design to build a resilient and trustworthy cloud-of-cloud infrastructure on top of that. The project also develops a prototype to demonstrate its results.

In December 2010, the TrustCloud research project [77][78] was started by HP Labs Singapore to address transparency and accountability of cloud computing via detective, data-centric approaches[79] encapsulated in a five-layer TrustCloud Framework. The team identified the need for monitoring data life cycles and transfers in the cloud, [77] leading to the tackling of key cloud computing security issues such as cloud data leakages, cloud accountability and cross-national data transfers in transnational clouds.

In July 2011, the High Performance Computing Cloud (HPCCLoud) project was kicked-off aiming at finding out the possibilities of enhancing performance on cloud environments while running the scientific applications - development of HPCCLoud Performance Analysis Toolkit which was funded by CIM-Returning Experts Programme - under the coordination of Prof. Dr. Shajulin Benedict.

In June 2011, the Telecommunications Industry Association developed a Cloud Computing White Paper, to analyze the integration challenges and opportunities between cloud services and traditional U.S. telecommunications standards. [80]

You might also like