Title: NETE4631 Cloud-enabling technologies and standards
1NETE4631Cloud-enabling technologies and
standards
2Recap 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
3Recap (2) - Cloud Types
4Recap (3) - Benefits VS Challenges
Benefits Challenges
On-demand self-service Broad network access Resource pooling Rapid elasticity Measured service Lower costs Ease of utilization Quality of Service Reliability Outsourced IT management Simplified maintenance and upgrade Low barrier to entry Security Interoperability Reliability Laws and regulations Organizational changes Cost
5Enabling Technologies for Cloud
Users
Cloud Data Center Dallas
WAN
Enterprise Data Center Newark
- Key attributes
- Long distance VM
- Elastic bandwidth
vCenter Server
Cloud Data Center Miami
Modified from Building the cloud Virtualized
Optical WAN
6Lecture Outline
- Enabling technologies for cloud
- Enabling technologies HW
- Enabling technologies SW
- Enabling technologies Network
- Enabling technologies Data
- Enabling technologies People
7Enabling Technologies HW
- Supercomputers.
- running exceptionally scientific applications.
- Clusters (of servers for cloud)
- independent computers works cooperatively
- a single administrative domain
- usually residing in a single room
- Servers for cloud
- Workstations
- Personal Computers
8Enabling Technologies SW
- Grid Computing
- Utility Computing
- Virtualization
- Abstraction and Virtualization
- Load balancing
- Hypervisor and its types
9Which technologies make up Cloud?
Virtualization Technology
Utility Computing
Grid Computing
Cloud
10Grid 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.
11The process flow of grid computing application
- From Cloud Application Architectures, Reese, G.
12Utility 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)
13Virtualization 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)
14Virtualization type
- Platform virtualization
- Virtual memory
- Storage virtualization
- Network virtualization
- Memory virtualization
- Application virtualization
- Desktop virtualization
- Data Center Virtualization
15Virtualization
Platform virtualization
16Virtualization
- 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
17Virtualization (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
18Load Balancing
- Virtualized network access to a service through
load balancing technology Hardware or software
based technology - 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
19Load Balancing (2)
- A load balancer listens to service request and
uses a scheduling algorithm to assign the request - Keeps the record of a requests session to
support a failover for the request
20Hypervisor
- 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)
21Types of Hypervisors
- Types of Hypervsiors Reproduced Figure 5.1 from
Sosinsky, B., Cloud Computing Bible, 2011.
22Enabling Technologies - Network
- Network types
- Network according to size
- WAN/MAN/LAN/PAN
- Network Topologies.
- Network .
- Internet, intranet, extranet
23WAN (Wide Area Network)
Modified from CCNA 4 version 3.0 Rick Graziani,
Cabrillo College
24WWW or Web
HTTP Request
HTTP Response
Internet
www.it.mut.ac.th
HTTP Response
HTTP Request
- Client-Server model
- Web browser Web server
- HTTP protocol
- Receiving and sending HTML
25Communication Web Browser
- Service is accessible through the web browser or
web service API - Web Browser
- Communication protocol
- HTTP 1.0 and 1.1 (W3C)
- Provide 8 different ways of request (HEAD, GET,
POST) - Hypertext Markup Language (HTML)
- Tags for separating content and HTML code
- Cascading Style Sheets for controlling the
presentation - 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)
26Communication Web 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
27XML 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
28XML 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
29REST 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
30REST 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 evolvability
31SOAP
- Simple Object Access Protocol (SOAP)
- Support communication between two different
systems - Procedure calls
- Remote Procedure Calls (RPC) wouldnt 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
32Enabling Technologies - Data
- Networks such as network bandwidth, servers such
as CPU, storage such as DB server NAS HD,
applications, services.
From Cloud Application Architectures, Reese, G.
33Enabling Technologies - People
- Cloud providers
- Service providers
- End-users
- Cloud adopters
- Cloud resellers
- Other clouds
34References
- Course book Chapter 3, 5
- Belle, J-P. V., et al., 2003, Discovering
Information Systems. - Kahanwal1, B., Singh, T.P., The Distributed
Computing Paradigms P2P, Grid, Cluster, Cloud,
and Junggle, International Journal of Latest
Research in Science and Technology 2012,
page183-187.
35Project assignment (20)
- Select one of the network information systems
(NISs) or cloud-based applications and present it
in the class (between class12 class15) - Relevance to NIS or Cloud and the process of
transformation data to information (5) - Content (topics studied in the class such as
enabling technologies, architecture, management,
security, demoetc.) (7) - On-time (in the day of presentation) (3)
- Presentation and slides (5)
36Thanks you
- Question?
- Conclusion of the Workshop of class2