nete4631 cloud-enabling technologies and standards

Post on 01-Jan-2016

36 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

NETE4631 Cloud-enabling technologies and standards. Lecture Notes #2. Recap – Definition if Cloud Computing. - PowerPoint PPT Presentation

TRANSCRIPT

1

NETE4631Cloud-enabling technologies and

standards

Lecture Notes #2

2

Recap – Definition if Cloud Computing “Cloud computing is a model for enabling

convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” (A definition by the US National institute of standards and technology (NIST))

Some of the characteristics Distributed computing at a massive scale On demand elasticity Exploiting existing technologies (Grid, Utility,

Virtualization) Pay per use model Driven by economies of scale

Recap (2) - Cloud Types

3

4

Recap (3) - Benefits VS Challenges

Benefits ChallengesOn-demand self-serviceBroad network accessResource poolingRapid elasticityMeasured serviceLower costsEase of utilizationQuality of ServiceReliabilityOutsourced IT managementSimplified maintenance and upgradeLow barrier to entry

SecurityInteroperabilityReliabilityLaws and regulationsOrganizational changesCost

Lecture Outline

Existing technologies Abstraction and Virtualization Load balancing Hypervisor and its types Communication protocols and

Services

5

Existing technologies

Grid Computing Utility Computing Virtualization

6

Grid Computing Grid computing combines computers from

multiple administrative domains to reach a common goal, to solve a single task. (Wikipedia)

One of the main strategies of grid computing is to use middleware to divide and apportion pieces of a program among several computers, sometimes up to many thousands.

Grid computing involves computation in a distributed fashion, which may also involve the aggregation of large-scale cluster computing-based systems.

7

Utility Computing

Utility computing is the packaging of computing resources, such as computation, storage and services, as a metered service. This model has the advantage of a low or no initial cost to acquire computer resources; instead, computational resources are essentially rented. (Wikipedia)

8

Virtualization Technology

Virtualization is the creation of a virtual (rather than actual) version of something, such as a hardware platform, operating system (OS), storage device, or network resources. (Wikipedia)

9

Virtualization type

Platform virtualization Virtual memory Storage virtualization Network virtualization Memory virtualization Application virtualization Desktop virtualization Data Center Virtualization

10

Virtualization

11Platform virtualization

Which technologies make up Cloud?

12

Grid Computing

Utility Computing+

Virtualization Technology

Cloud

13

Abstraction and Virtualization

Virtualization supports “Abstraction” Abstraction is the key concept in providing

the promised benefits of cloud computing Mapping a logical address (id) to a set

of physical resources Virtual servers Virtual storage Virtual networks

Load balancing Hypervisor Porting applications between vendors

Virtualization (2)

Virtualization is a key enabler of abstraction and cloud computing –logical address for extendable and scalable physical resources

Types of virtualization Virtualization support for cloud computing

attributes Service-based Scalable and elastic Shared services Metered usage Internet delivery

14

Load Balancing

Virtualized network access to a service through load balancing technology –Hardware or software based

Resources to be load balanced Network interfaces and services such as

DNS, FTP, HTTP Connections through intelligent switches Processing through computer system

assignment Storage resources Access to application instances

15

Load Balancing (2)

A load balancer listens to service request and uses a scheduling algorithm to assign the request

Keeps the record of a request’s session to support a failover for the request

16

Hypervisor

A low level program that provides system resources access to virtual machines

Hypervisor is also called Virtual Machine Monitor (VMM)

One level higher than the supervisory program for a hardware and/or hardware & OS

Presents a virtual platform to a guest OS and manages its functioning

Two types of Hypervisor Type 1 or full virtualization (Oracle VM, Vmware ESX) Type 2 or paravirtualization (Xen)

17

Types of Hypervisors

18

Types of Hypervsiors : Reproduced Figure 5.1 from Sosinsky, B., Cloud Computing Bible, 2011.

Communication

Communication HTTP 1.0 and 1.1 (W3C) Provide 8 different ways of request (HEAD, GET, POST)

XMPP Extensible Messaging Presence Protocol (XMPP) –provides

two ways of communication as compared to one way Pooling can be problematic Because of two ways communication, no pooling required XML-based and easily extensible Efficient and can easily scale to millions of concurrent

users Security

Secure Socket Layer (SSL) Open ID and PCI DSS

19

Client

Hypertext Markup Language (HTML) Tags for separating content and HTML

code Cascading Style Sheets for controlling

the presentation

20

21

Client (2) Dynamic HTML

Provides more control over HTML elements on client side

Document Object Model (DOM) Scripts (e.g., JavaScript and ActiveX) Changing the tags and properties Real-time positioning Dynamic fonts (Netscape feature only) Data binding (IE feature only)

JavaScript

Service A web service “is a software system designed

to support interoperable machine-to-machine interaction over a network” W3C

Data JSON: JavaScript Object Notation computer data

interchange format –transmitted after serialization –alternative to XML

JSON Basics: Based on subset of JavaScript –language independent

JSON should be used instead of XML when JavaScript is used –less CPU overhead and less coding as no need to use DOM for data extraction because an object is already an object in JSON

22

XML: Extensible Markup Language

Provides a standardized way to represent text and data for platform independence

HTML and XML XML is extensible by end users while

W3C defines HTML

23

XML: Extensible Markup Language (2)

Key features Self-descriptive data –no type or relation

definition Database integration: multiple types of data No programmatic modification –XSL Style sheet

can handle Open Server view of data –only one view of

data, even located at different places Open and extensible Contains machine-readable context information Content vs. presentation

24

Web Services

Representational state transfer (REST) An architectural style based on

Internet-based technologies like HTTP and XML

Easier to use compared with SOAP which has much richer functionality

Resources are sources of specific information and each of them is referred by a global identifier, URI

25

Web Services (2)

Potential benefits Better response time and reduced

server load -caching No need to maintain session state Only browser is enough at the client

side No separate resource discover,

hyperlinks are sufficient Better long term compatibility and

evolvability26

SOAP Simple Object Access Protocol (SOAP)

Support communication between two different systems

Procedure calls Remote Procedure Calls (RPC) wouldn’t go

through firewall with HTTP SOAP solves this problem by describing how

to encode an HTTP header and an XML file –so a program can call an other program, both running on different computers, in a way that program calls can get through firewalls

27

References

Course book – Chapter 3, 5

28

THANK YOU!!!!!

29

References of Lecture note#1

Armbrust, M., et al., 2010, A View of Cloud Computing, ACM, 53(4), pp. 50-58.

Zhang, Q., Cheng, L., Boutaba, R., Cloud Coomputing: state-of-the-art and research challenges, Journal of Internet Services and Applications, 2010, 1:7-18.

The Future of Cloud Computing: Opportunities for European Cloud Computing Beyond 2010.

30

top related